使用C ++的面向对象编程的基本概念
面向对象的程序设计是一种使用对象并对其功能进行分类的程序设计。面向对象的编程基于现实世界的实体,例如继承,多态性,数据隐藏等。它旨在将数据和这些数据集上的功能工作绑定在一起,以限制其使用。
面向对象编程的一些基本概念是-
类
对象
封装
多态性
继承
摘要
类-类是具有自己的成员(即数据成员和成员函数)的数据类型。它是面向对象编程语言中对象的蓝图。它是c++中面向对象编程的基本构建块。通过创建类的实例,可以使用编程语言访问类的成员。
类的一些重要属性是-
类是用户定义的数据类型。
一个类包含诸如数据成员和成员函数之类的成员。
数据成员是该类的变量。
成员函数是用于操纵数据成员的方法。
数据成员定义类的属性,而成员函数定义类的行为。
一个类可以具有多个对象,这些对象具有对所有对象都相同的属性和行为。
语法
class class_name { data_tpye data_name; return_type method_name(parameters); }
对象-对象是类的实例。它是在面向对象的编程中使用的具有特征和行为的实体。对象是为分配内存而创建的实体。当一个类被定义时,它本身没有内存块,一旦创建对象,该内存块将被分配。
语法
class_name object_name;
示例
#include<iostream> using namespace std; class calculator { int number1; int number2; char symbol; public : void add() { cout<<"The sum is "<<number1 + number2 ; } void subtract() { cout<<"The subtraction is "<<number1 - number2 ; } void multiply() { cout<<"The multiplication is "<<number1 * number2 ; } void divide() { cout<<"The division is "<<number1 / number2 ; } calculator (int a , int b , char sym) { number1 = a; number2 = b; symbol = sym; switch(symbol){ case '+' : add(); break; case '-' : add(); break; case '*' : add(); break; case '/' : add(); break; default : cout<<"Wrong operator"; } } }; int main() { calculator c1(12 , 34 , '+'); }
输出结果
The sum is 46
封装在面向对象的编程中,封装是将数据和信息包装在单个单元中的概念。封装的正式定义是:封装绑定到数据和可以操纵数据的相关功能。
让我们通过一个简单的现实生活示例来理解该主题,
在我们的大学中,我们为每门课程设有部门,例如计算机科学,信息技术。,电子学等。每个部门都有自己的学生和科目,并随时跟踪和教授。让我们将每个部门视为一个类,该类封装了有关该部门的学生和要教授的学科的数据。另外,一个系列有一些固定的规则和指南,学生必须遵循这些规则和指南,例如课程时间,学习中使用的方法等。这是现实生活中的封装,有数据,并且有操作数据的方法。
由于面向对象编程中的封装概念,另一个非常重要的概念是可能的,它是数据抽象或数据隐藏。封装可能隐藏显示时的数据,仅显示需要显示的信息。
多态性名称定义了多态性是多种形式。这意味着多态性是面向对象编程使用多种形式完成某些工作的能力。该方法的行为取决于调用该方法的类型或情况。
让我们以一个现实生活中的例子为例,一个人根据情况可能有不止一种行为。就像一个女人,一个母亲,一个管理者和一个女儿,这定义了她的行为。这就是多态性概念的来源。
在c++编程语言中,使用两种方法可以实现多态。它们是运算符重载和函数重载。
运算符重载在运算符重载中,运算符可以在不同的用法实例中具有多种行为。
函数重载具有相同名称的函数可以根据某些条件执行多种类型。
继承是类继承或派生其他类的属性或特性的能力。这是非常重要且面向对象的程序,因为它允许可重用性,即通过继承使用另一个类中定义的方法。从其他类派生属性的类称为子类或子类,继承属性的类是基类或父类。
Cplusplus编程语言支持以下类型的继承
单继承
多重继承
多级继承
层次继承
混合继承
抽象数据抽象或数据隐藏是隐藏数据并仅向最终用户显示相关数据的概念。它也是面向对象编程的重要组成部分。
让我们以现实生活为例来更好地理解概念,当我们骑自行车时,我们只知道踩刹车会停止自行车,而油门旋转会加速,但您不知道它的工作原理,也不认为我们应该知道这就是为什么这样做与概念数据抽象相同的原因。
用C加编程语言编写两种方式可以完成数据抽象-
使用课
使用头文件