700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > c语言面向对象编程中的类_C ++中的面向对象编程

c语言面向对象编程中的类_C ++中的面向对象编程

时间:2021-07-27 23:34:55

相关推荐

c语言面向对象编程中的类_C ++中的面向对象编程

c语言面向对象编程中的类

Object oriented programming, OOP for short, aims to implement real world entities like inheritance, hiding and polymorphism in programming.

面向对象的编程,简称OOP,旨在在编程中实现诸如继承,隐藏和多态性之类的现实世界实体。

The main aim of OOP is to bind together the data and the functions that operate on them so that no other part of the code can access this data except that function.

OOP的主要目的是将数据和对其进行操作的功能绑定在一起,以便除该功能外,代码的其他任何部分都无法访问此数据。

Let's learn about different characteristics of an Object Oriented Programming language.

让我们了解一下面向对象编程语言的不同特征。

目的:(Object:)

Objects are basic run-time entities in an object oriented system. Objects are instances of a class which are user defined data types.

对象是面向对象系统中的基本运行时实体。 对象是类的实例,是用户定义的数据类型。

class person{char name[20];int id;public:void getdetails(){}};int main(){person p1; //p1 is an object }

Objects take up space in memory and have an associated address like a record in pascal or a structure or union in C.

对象占用内存中的空间,并具有关联的地址,例如pascal中的记录或C中的结构或联合。

When a program is executed the objects interact by sending messages to one another.

执行程序时,对象通过相互发送消息进行交互。

Each object contains data and code to manipulate the data. Objects can interact without having to know the details of each others' data or code. It's enough to know the type of message accepted and type of response returned by the objects.

每个对象都包含数据和用于操纵数据的代码。 对象可以进行交互,而不必知道彼此数据或代码的详细信息。 知道接受的消息类型和对象返回的响应类型就足够了。

类:(Class:)

A class is a blueprint of data and functions or methods. Class does not take any space.

类是数据,函数或方法的蓝图。 类不占用任何空间。

class class_name{private://data members and member functions declarationspublic://data members and member functions declarationsprotected://data members and member functions declarations};

Class is a user defined data type like structures and unions in C.

类是用户定义的数据类型,例如C中的结构和联合。

By default class variables are private, but in case of structure they are public. In the above example, person is a class.

默认情况下,类变量是私有的,但是在结构的情况下,它们是公共的。 在上面的示例中,person是一个类。

封装和数据抽象:(Encapsulation and Data abstraction:)

Wrapping up (combining) data and functions into a single unit is known as encapsulation. The data is not accessible to the outside world and only those functions which are wrapping the class can access it. This insulation of the data from direct access by the program is called data hiding or information hiding.

将数据和功能包装(组合)为单个单元称为封装。 外界无法访问该数据,只有包装该类的那些函数才能访问它。 防止程序直接访问的这种数据隔离称为数据隐藏或信息隐藏。

Data abstraction refers to providing only needed information to the outside world and hiding implementation details.

数据抽象是指仅向外界提供所需的信息并隐藏实现细节。

For example, consider a class Complex with public functions getReal() and getImag(). We may implement the class as an array of size 2 or as two variables.

例如,考虑具有公共函数getReal()和getImag()的类Complex。 我们可以将类实现为大小为2的数组或两个变量。

The advantage of abstraction is that we can change implementation at any point and the users of the Complex class won’t be affected as our method interface remains same. Had our implementation been public, we would not have been able to change it.

抽象的优点是我们可以随时更改实现,并且由于我们的方法接口保持不变,因此不会影响Complex类的用户。 如果我们的实施是公开的,我们将无法对其进行更改。

遗产:(Inheritance:)

Inheritance is the process by which objects of one class acquire the properties of objects of another class. It supports the concept of hierarchical classification.

继承是一个类的对象获取另一类的对象的属性的过程。 它支持层次分类的概念。

Inheritance provides reusability. This means that we can add additional features to an existing class without modifying it.

继承提供了可重用性。 这意味着我们可以在不修改现有类的情况下添加其他功能。

多态性:(Polymorphism:)

Polymorphism refers to the ability to take more than one form. An operation may exhibit different behaviors in different instances. The behavior depends on the types of data used in the operation.

多态性是指采取多种形式的能力。 一个操作在不同情况下可能表现出不同的行为。 行为取决于操作中使用的数据类型。

C++ supports operator overloading and function overloading. Operator overloading is the process of making an operator exhibit different behaviors in different instances. Function overloading is using a single function name to perform different types of tasks. Polymorphism is extensively used in implementing inheritance.

C ++支持运算符重载和函数重载。 操作员重载是使操作员在不同情况下表现出不同行为的过程。 函数重载使用单个函数名来执行不同类型的任务。 多态被广泛用于实现继承。

动态绑定:(Dynamic Binding:)

In dynamic binding, the code to be executed in response to a function call is decided at runtime. C++ has virtual functions to support this.

在动态绑定中,将在运行时确定响应函数调用而执行的代码。 C ++具有支持此功能的虚函数。

讯息传递:(Message Passing:)

Objects communicate with one another by sending and receiving information to each other. A message for an object is a request that a procedure be executed and therefore it will invoke a function in the receiving object that generates the desired results.

对象通过相互发送和接收信息来相互通信。 对象的消息是对过程执行的请求,因此它将在接收对象中调用生成所需结果的函数。

Message passing involves specifying the name of the object, the name of the function and the information to be sent.

消息传递涉及指定对象的名称,函数的名称以及要发送的信息。

更多信息 (More information)

Object Oriented Programming Concepts: How to go from Zero to One with Objects

面向对象的编程概念:如何使对象从零变为一

How to Explain Object Oriented Programming Concepts to a 6 Year Old

如何向6岁的孩子介绍面向对象的编程概念

翻译自: /news/object-oriented-programming-in-c/

c语言面向对象编程中的类

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。