这里写目录标题
一.面向对象三大特征
1.封装
2.继承
3.多态
一.面向对象三大特征
1.封装
提高程序安全性,就是把属性和对象包装到类对象中,从而对类对象的调用操作,而无需关注里面的细节。
class Car: #创建类对象,下面内容是进行封住的
def __init__(self,brand):
self.brand=brand
def start(self):
print('汽车已启动')
car=Car('宝马') #调用封装的class
car.start()
print(car.brand)
2.继承
声明:object类是所有类的父类,内置函数*dir()*可以查看指定对象的所有属性。
2.1.语法格式
class 子类类名 ( 父类1,父类2…):
pass
例子(单继承)
class Person(object): #person继承object
def __init__(self,name,age):
self.name=name
self.age=age
def info(self):
print(self.name,self.age)
#定义子类
class Student(Person): #Student继承person
def __init__(self,name,age,score):
super().__init__(name,age)
self.score = score
***def info(self): #重写父类
super().info()
print(self.score)***
#测试
stu=Student('jack','10','89')
stu.info()
多继承,可以同时继承两个父类
class A(object):#定义父类A
pass
class B(object):#定义父类B
pass
class C(A,B):#实现多继承,C同时继承A,B两个父类
pass
提高代码复用性(就是不重复写同样的东西,减少写代码的工作量)
3.多态
class Animal(object):#下面的狗和猫继承了Animal的属性
def eat(self):
print('动物要肉食')
class Dog(Animal):
def eat(self):
print('狗吃骨头')
class Cat(Animal):
def eat(self):
print('猫吃鱼')
class Person:
def eat(self):
print('人吃五谷杂粮')
def fun(obj):
obj.eat()
fun(Cat())
fun(Dog())
fun(Animal())
fun(Person())
提高程序的可扩展性和可维护性