# from hello import Dog,Eat
#
# dog=Dog(12,44,55) #new 一个对象 实例化
# print(dog.a,dog.b,dog.c)
#
# eat=Eat("eat11")
#
# print(eat)
#############封装#START############
class Card(object): #构造函数
def __init__(self,num,pwd,ban):
self.num=num
self.pwd=pwd
self.ban=ban #私有属性 类似private 只能在类的内部访问
def cun(self):
print("存款")
def geiBan(self,numm,pwdd): #封装 安全验证
if self.num==numm and self.pwd==pwdd:
return self.__ban
else:
return "输入错误"
card=Card("1001","123456",100) #可以直接 修改 不安全 所以要封装起来 ___
#############封装END############
#############继承#START############
class Animal(object): #动物类
def __init__(self,color,ass):
self.color=color
self.ass=ass
def run(self):
print("跑")
class Cat(Animal): #继承 猫继承动物类。可获得父类所有属性和函数
def eat(self):
print("小猫在吃鱼")
class Dog(Animal):
def __init__(self,name,age,sex,color,ass):
super(Dog,self).__init__(color,ass)
self.name=name
self.age=age
def eat(self):
print("小狗在吃屎")
#在子类里使用super初始化父类构造函数的时候必须传入父类所有的值
#如果方法相同,子类将覆盖父类,优先调用父类方法,如果子类没有构造函数自动去找父类的构造函数。一直往上直到找到为止
#cat=Cat("黄色")
#############继承#END############
#############多态#START############
dog=Dog("落霞",18,"公",11,"1")
cat=Cat("黑色",11)
def feed(obj):
obj.run() #多态 此处为去调用对象的run函数
feed(dog)
#############多态#END############
Python 学习笔记之继承和封装
猜你喜欢
转载自blog.csdn.net/weixin_44371918/article/details/89847069
今日推荐
周排行