今天总结了一下,面向对象高级: 轻松学习.
首先,在学习之前必须了解什么是: 面向对象
面向对象:描述一个对象的学习和行为,其本质是:对函数和变量进行封装,提高代码的复用性.
class Person: # 类的关键字 为 class 这里Person就是一个类
name='JDR' # 像name,sex 这样的函数 称为 类的属性
sex='男'
def found(name): # 像用def 这样定义的 函数 称为 类的方法
print(f'{name} 成立了ZJG大学')
def man(name):
print(f'{name} 是一个慈善家')
n = Person .name
Person.found(n)
面向对象的优点 : 以 (class)类 为单位 对代码进行管理;变量与函数相关性清晰,利于维护,设计模式清晰。
1.类的定义和使用:
class Person:
def __init__(self,name,sex): # __init__是初始化函数,在实例化时自动调用
self.name=name # self 是实例化自己
self.sex=sex
def found(name):
if sex == '男':
print(f'{name}{sex}先生 成立了ZJG大学')
return f'{name}{sex}先生 成立了ZJG大学'
def man(name):
if sex == '男':
print(f'{name}{sex}是一个慈善家')
return f'{name}{sex}是一个慈善家'
user=Person('JDF','男') # 这里user是Person类的实例(就是实例到具体对象)
user.found() # 实例化对象用 (.) 来操作对象的 属性 和 方法
print(user.found())
2.继承和重用 :
单继承:
class Person:
def __init__(self,name,sex):
self.name=name
self.sex=sex
def study(self):
print("人都喜欢学习文字")
class China(Persong):
def study1(self):
super().study(self) 方法一 (推荐) # 重用 子类重新定义父类,使统一方法有不同行为
# Person.study() 方法二
print("中国喜欢学习中文")
bd=China(xiaoming,"男")
bd.study()
class American(Person):
def study(self):
print("美国喜欢学习英文")
object 是所有类的子类(即是Person的父类);上述中Chia和American是Person的子类;
多继承:
class HuoXinRen(china,American):
def study(self):
super().study() # 重用
print("火星人及爱学习中文,也爱学习英文")
user=HuoXinRen(xiaozhi,"女")
user.study()
注意: 多继承的继承顺序通过 mro 方法查找
感谢大家捧场,希望有朋友可以支持支持点个赞,也可以互相关注,相互点赞,相互支持,祝你们学习快乐,越过越开心。