类和对象

类相当于男朋友,对象相当于女朋友。分类
1:数据成员,成员函数。
2:构造函数,析构函数
3:对象复制,对象赋值。
4: 对象数组,对象指针。
5:this指针。

类:如果有多条狗:狗都信息

关键子字        class Dog     类名
          

{
             

 char name【20】
       `属性   int  age;数据成员
       int  type;
void speak()`;       `成员函数`
 void  run();          成员函数
  };

                   目的不同,抽象出来的信息不同。(有选择)

电视机的马达不会展示个观众,被封装起来了。
用访问限定符来处理以上问题
1:public :公共的
2:protected:受保护的
3:private:私有的

例如
class TV
{
public:
char name【20】
int type;

void changevol();
void power();
private:
电阻调节
像素配色
};
解释:public表示暴露,private表示隐藏。

对象的实例化
1:类就是一个模板。2:对象就是用类设计的。子集的关系。
实例化的方式1):用栈来实现,2):用堆来实现。

栈:class TV
{                                                    int main(void)             
public:                                        {
     char name[20];//数据成员   TV*p=new TV();用指针,用new申请内存,delete释放内
     int type;//数据成员               TV*q=new TV[20];存,通过对象成员的访问实现目的。
     void changeVol();                   //to do
                                                      delete p;
     void power();                            delete[]q;
 };
 int main(void)
 {
 TV tv;//前面是类的名称,后面是对象的名称。
 TV tv[20];//这是定义数组名称,前面是类,后面是数组名称和有多少个元素。
 return 0;
 }

对象成员的访问:

int main(void)
{
  TV tv;
  tv.type=0;通过。访问它的成员changeVol()
  tv.changeVOL();
  return 0;
  }
  

int  main (void)
{
TV*=new TV();p这个指针访问type,还要删除。
P->type=0;
p_>changeVol();
delete p;
p=NULL;
return 0;
}

数组成员的访问

int main(void)
{
TV*p=new TV[5];
for(int i=0;i<5;i++)
{
p[i]->type=0;
p[i]_>changeVol();
}
delete 【】p;
p=NULL;
return 0;
}

面向对象的程序设计的特点:
1:抽象。对同一类对象的共同属性和行为进行概括,形成类。1):首先注意问题的本质及其描述,其次是实现过程或细节。2):数据抽象:描述某类对象的属性或状态。3):代码抽象:描述某类对象共有的行为特征或具有的功能。(对象相互区别的物理量)4):抽象的实现:类
2封装。3:继承。4:多态。

数据抽象:以钟表为例:数据抽象:

int hour;int minute;int escond;
代码抽象:setTime(),showTime()函数,

例题

class  clock{
public:
void setTime(int newH,int newM,int news);
void showTime();
private:
int hour,minute,second;
};{}是封装,set time ,show time是外部接口;public,private是特定的访问权限。

封装
将抽象出来的数据,代码封装在一起,形成类。将抽象出来的数据成员,代码成员相结合,将他们视为一个整体。
目的:增强安全性,简化编程,使用者不必了解具体实现细节,而只需要通过外部接口,特定的访问权限,来使用类的成员。实现封装:类声明中的{},例子见上。

继承:在已有类的基础上,进行扩展形成新的类。
多态:同一名称,不同的功能实现方式
目的:达到行为的标识统一,减少程序中标识符的个数。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值