<h5>定义过程:</h5>
<pre>
class Fruits(object):
pass
</pre>
<h5>实例化过程:</h5>
fr = Fruits()
<h5>1.初始化方法可以有默认参数:</h5>
<h5>2.默认参数应该放在必备参数的后面</h5>
<h5>3.类的属性 大家共有的</h5>
<h5>4.实例的属性,数据属性 实例自己的属性</h5>
<h5>5.判断是否是一个类的实例</h5>
<pre>
isinstance(12,int)
True
a = 12
type(a) == int
True
isinstance(fr1,Fruits)
True
</pre>
<h5>6.fr1.dict 查看类的属性和值</h5>
{'color': 'yellow', 'name': 'banana', 'weight': 90, 'list2': []}
<h5>7.隐藏属性,下划线 _ 需要加_访问</h5>
<h5>8.私有变量,双下划线__ 外部看着不能访问,实际调用类也可以访问</h5>
外部调用相当于名字重整 fr1._Fruits_._weight
内部正常调用 self.__weight,self._color
<h5>9.方法属性可以直接使用类属性</h5>
<h5>10.数据属性会覆盖掉同名的方法属性</h5>
<h5>11.继承 Apple:子类(派生类) Fruits:父类(基类):</h5>
1.重写父类的,直接调用父类的方法和属性
2.重写的父类的方法,会调用自己的方法
3.先在内部找,没有,往上级找
4.多重继承,相当于父类的拼接,多个都有的话会使用靠前的父类
Fruits.\_\_init\_\_(self,'apple',color,weight) #把父类的初始化改造之后初始化
super(Orange,self).\_\_init\_\_('orange',color,weight) #调用父类信息进行初始化
<h5>12.issubclass(Apple,Fruits) 判断一个类是否另外类的子类</h5>
<h5>13.多态:多态是基于继承的好处,当派生类重写了基类的方法</h5>