类.2

 

类——面向对象:

1、类的定义使用的关键字是class 2、类的首字母必须是大写 3、目前学习的类都是新式类 4、所有类的基类(祖先)都是object,因此都是需要来继承的 5、面向对象的三大特性: 封装 继承 多态—— https://zhuanlan.zhihu.com/p/70398272

类里面的属性和方法 相当于 变量和函数

全局数据属性共享给所有方法

类的本质:

\1. 是将属性(全局变量),方法(函数)都封装在一个黑盒子里面;

\2. 类里面的方法可以共享属性,属性的修改不会影响类的外部变量,这就是类的封装产生的优势;

\3. 同时类可以被继承,子类可以拥有和父类一样的属性和方法;

\4. 并且子类可以有新的属性,新的方法,

问题1.封装是什么,为什么要封装?

封装的本质是将事物相关的属性和方法封装在一个类里面,我们调用类创建实例的时候,不用关心类内部的代码细节,相当于一个黑箱子,我们只需要该实例(黑箱)能给出我们想要的结果就好了。

- 问题2.继承是什么,为什么要继承,什么是单继承,什么是多继承,继承链又是什么?

java是单继承和python是多继承

\1. 封装:属性和方法放到类内部,通过对象访问属性或者方法,隐藏功能的实现细节.当然还可以设置访问权限;

\2. 继承:子类可以用父类里面的属性或者方法,当然子类还可以提供自己的属性和方法;

\3. 多态:同一个方法不同对象调用同一个方法功能的表现形式不一样,例如:1.不同的两个对象,字符串的加法和整数的加法,同样是加法,实现的

修改实例

 

 属性和方法

 

 调用类的方法,常常使用普通方法

 

 

方法

 

继承

 

 继承

通过继承,实例化子类得对象后调用某一个方法,遵循从左到右,从上到下得原则

同类先找得原则,

 

 

 

 查看执行顺序---------类.mro

 

鸭子类型,看起来像

 

 

posted @ 2021-11-30 16:54  阿建xj  阅读(69)  评论(0)    收藏  举报