类的特性
类的特性:# # 1.封装:
# classPeople: #经典类,默认继承object
# def __init__(self):
# pass
# def set_name(self,name): #创建一个实例方法,并且将获取到的值赋值给实例变量
# self.name=name
# defget_name(self): #谁调用这个方法,我就把这个实例变量返回给他
# return self.name
# p=People()
# p.set_name("小明")
# print(p.get_name())
#
#
# # 2.继承:当自己的类中方法不够使用了,可以去继承别的类。被继承的叫做父类,继承的叫做子类。
# # 子类对象可以调用父类的方法,父类对象不能够调用子类的防范
# # 可以同时继承多个类,也可以继承之后再进行继承
# # 第一种:同时继承多个类
# class Father(object): #object不是形式参数,是万物之源
# def__init__(self):
# pass
# def rich(self):
# print("我是一个富有的人")
# def drink(self):
# print("我是一个喜欢喝酒的人")
# classMother():
# defbeautiful(self):
# print("我是一个漂亮的人")
#
# classSon(Father,Mother):
# def__init__(self):
# pass
# defyoung(self):
# print("我是一个年轻的人")
# defstrong(self):
# print("我是一个强壮的人")
# f=Father() #创建父类对象
# s=Son() #创建子类对象
# s.rich() # 子类对象可以调用父类方法
# s.beautiful()
# f.young() # 父类对象不能够调用子类方法
#
# # 第二种:继承之后再继承:
# class Grandfather(object): #object不是形式参数,是万物之源
# def__init__(self):
# pass
# def rich(self):
# print("我是一个富有的人")
# def drink(self):
# print("我是一个喜欢喝酒的人")
# classFather(Grandfather):
# defbeautiful(self):
# print("我是一个漂亮的人")
# classSon(Father):
# def__init__(self):
# pass
# defyoung(self):
# print("我是一个年轻的人")
# defstrong(self):
# print("我是一个强壮的人")
# s=Son()
# f=Father()
# s.rich() #孙子类对象,调用爷爷类方法
# f.rich() #父亲类对象可以调用爷爷类方法
# s.drink() #孙子类对象,调用爷爷类方法
# s.beautiful() #孙子类对象,调用父亲类方法
# s.strong() #孙子类对象,调用孙子类方法
#
# # 3.多态: 当继承的类里面的方法,不满足子类的要求了,子类可以进行方法的重写。
# # 如果调用重写的方法,会执行重写之后的方法
# classAnimal(object):
# defsay(self):
# print("欢迎来到动物世界")
# classDog(Animal):
# deftalk(self):
# print("汪汪")
# defsay(self):
# print("hello")
#
# a=Animal()
# d=Dog()
# g=Grandfather()
# a.talk()
# a.say() #如果在子类中,没有对say方法进行重写,那么会调用父类中的这个say的方法
# a.say() # 如果在子类中,对say方法进行了重写,那么会调用重写之后的方法
#
# a=Animal()
# d=Dog() #Dog类继承与Animal类
# g=Grandfather()
# # 判断对象是否属于这个类
# print(isinstance(a,Animal)) #True
# print(isinstance(d,Animal)) # True
# print(isinstance(g,Animal)) #False
# # 判断第一个参数的类,是否继承于第二个参数的类
# print(issubclass(Dog,Animal)) #True
# print(issubclass(Grandfather,Animal)) #False
页:
[1]