面向对象程序设计是在面向过程程序设计的基础上发展而来的,它比面向过程程序设计具有更强的灵活性和扩展性。
对于新手而言,python比其他面向对象的编程语言更易于理解和掌握。
面向对象编程可以使软件设计更灵活,提高了代码复用率。
1.对象(object)
对象是一个抽象概念,可以表示任意事物,“世间万物皆为对象”。在你身边任何一个东西或一件事物都是对象,无论它是抽象的事物还是实际的事物。比如:一个人是一个对象,一条狗是一个对象,一辆车也可以是一个对象等。
需要记住:一个完整的对象具有属性和行为(或方法)。
2.类
类是一种抽象的概念,我们把具有相同属性和行为的对象都归为同一类。以狗为例,狗有许多品种,但它们都属于犬类。
类是封装对象属性和行为的载体,通俗地讲就是一个类里装的是某个对象的属性和行为,即具有相同属性和行为的一类实体被称为类。以大雁为例,把大雁视为一类,那么大雁这个类的属性是有两只翅膀、两只脚等,具有的行为是觅食、飞行和游泳等。
3.面向对象程序设计的特点
三大特征:封装、继承、多态。
继承:
class parent:
_play = "打游戏"
def __init__(self,name,sex):
self.name = name
self.sex = sex
def study(self):
print("人一生下来就会学习")
class son(parent):#继承 子类会继承父类的所有属性和方法
def study1(self):
print("儿子特别喜欢学习")
son1 = son("xx","男")
son1.study()#子类会继承父类的study
多态
class parent:
_play = "打游戏"
def __init__(self,name,sex):
self.name = name
self.sex = sex
def study(self):
print("人一生下来就会学习")
class son(parent):#继承 子类会继承父类的所有属性和方法
def study(self,str1,str2):#多态性
print("儿子特别喜欢学习{},{}".format(str1,str2))
son1 = son("xx","男")
son1.study("打篮球","打羽毛球")
运行结果如下:
class student: #class为类的修饰符,student为类名
job = "学习" #类属性
def __init__(self,name,sex,number,age): #构造方法
student.name = name #实例属性
student.sex = sex
student.number = number
student.age = age
Lily = student(name="Lily",sex="女",number="123456",age="20")
print(Lily.sex)
print(Lily.name)
这期就先写到这里啦。