类和对象—对象特性

文章探讨了面向对象编程中的成员概念,包括属性和行为,以及封装的重要性。封装允许对属性和行为进行权限控制,如public、protected和private。C++中struct和class的区别主要在于默认访问权限。文章还强调了构造函数和析构函数在对象生命周期中的角色,它们分别用于初始化和清理对象,并且是编译器强制要求的。

类中的属性和行为统称为成员

属性也叫成员属性、成员变量

行为也叫成员函数、成员方法

封装的意义:一把属性和行为做为整体,二可以把属性和行为放在不同的权限下,加以控制

访问权限有三种:

public 公共权限: 成员:类内可以访问,类外可以访问

protected 保护权限 成员: 类内可以访问,类外不可以访问

private 私有权限 成员:类内可以访问,类外不可以访问

在C++中struct和class唯一的区别在于默认的访问权限不同

struct 默认权限为公共

class 默认权限为私有

成员属性设置为私有的优点

1.将所有成员属性设置为私有,可以自己控制读写权限

2.对于写权限,可以检测数据的有效性

对象的初始化和清理

初始化:利用构造函数

清理:利用析构函数

对象的初始化和清理也是两个非常重要的安全问题。

对象的初始化和清理是编译器强制要求完成的,如果程序员不提供构造和析构,编译器会提供,

编译器提供的构造函数和析构函数是空实现(函数体为空,没有代码)。

构造函数:主要作用在于创建对象时为对象的成员属性赋值,构造函数由编译器自动调用,无需手动调用

析构函数:主要作用在于对象销毁前系统自动调用,执行一些清理工作

构造函数语法:类名(){}

1.构造函数,没有返回值,也不写void

2.函数名称与类名相同

3.构造函数可以有参数,可以发生重载

4.程序在调用对象时会自动调用构造,无须手动调用,而且只会调用一次。

析构函数语法:~类名(){}

1.析构函数,没有返回值,也不写void

2.函数名称与类名相同,在名称前加~

3.析构函数不能有参数,不可以发生重载

4.程序在对象销毁前自动调用析构,无须手动调用,而且只会调用一次。

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值