12 类和对象--封装

2020-10-23  本文已影响0人  ca8519be679b

封装

将具有相同性质的事物抽象为一类,这个过程就是封装,将属性和行为作为事物的表现

1

快速上手定义个类,比如圆Circle类如上,我们里面定义属性和权限,其中公有的为半径和方法,我们定义了类就可以main里声明变量,并使用属性和方法,注意类定义有分号

封装的访问权限

我们知道,类声明权限方法是要声明权限的,如上个是public

访问权限有3种public,protected,private

public 类内外都可以访问

protected 类内可以访问,类外不能访问

private 类内可以访问,类外不可以访问

有人会说了,后两个我们看着一样啊,其实是在继承部分有区别,当子类继承时,protected可以访问父类,而private不能访问

2

如上,我们定义的属性,3种都可以在类内方法访问,但是在类外protected和private都不可以

c++中struct和class区别

我们虽然没有给struct写方法,但是是可以的,struct和class很像,都可以定义属性和方法,但是是有区别的,区别在于class的不写权限默认是private的,而struct默认是public的

3

如上,我们可以看到效果,struct默认可以访问,我们当然之前都这么做,但是class是不可以的

将类属性私有化的好处

可以自己控制访问权限,同时设置方法可以做输入校验,将属性设为私有时,设置public方法访问

4

类似Java的setter和getter,

当然可以玩只读权限,不定义set方法,get方法里返回默认值,

上一篇下一篇

猜你喜欢

热点阅读