python类的继承及get和set方法的使用

Python中get和set 方法

import sys
class Student:
    def set_namme(self,name):
        self.name=name
    def get_name(self):
        return self.name
stu=Student()
print(sys.getrefcount(stu))#查询对象的引用个数 前题先导入sys模块
stu.set_namme('abc')#用set_name添加值
print(stu.get_name())#用get_name方法获取值

Python中继承

面向对向的三大特征:封装,继承,多态

继承:子类继承父类,子类可以使用父类的属性和方法,简化代码

当生成子类对象时,先初始化父类对象,所以如果父类有__init__()方法,并且有属性时,要通过子类的构造赋值

Python中所有的类继承了object是所有类的父类

一个类可以有多个子类

子类与父类参数进行分工

class person:
    def __init__(self,name,sex,height):
        self.name=name
        self.sex=sex
        self.height=height
    def eat(self):
        print("%s在吃饭"%self.name)
        print("正在吃饭")
class Student(person):#子类继承了person类
    def __init__(self,name,sex,height,score):
        person.name = name #这是父类传参赋的name值
        person.sex = sex#这是父类传参赋的sex值
        person.height = height#这是父类传参赋的height值
        self.score = score#这是子类自己的参数的值
      #即使什么都没有也能运行父类中的方法
stu=Student("张三","男",1.8,80)#创建一个对象
stu.eat()  #调用父类中的方法

在子类中,调用父类属性,在__init­­__方法中使用
一、父类 . 属性
二、Self . 属性
在子类中,调用类方法
一、Super().方法名称()  
二、Self.方法名称()
总结:当子类继承父类时,子类的的构造方法应该包含父类和子类共同的属性,在子类的初始化方法中,将父类的属性传递给父类,子类的属性赋值给子类
练习:
交通工具类:属性:名称--方法:行驶
子类:卡车. 属性:载重
子类:火车  属性:车箱个数
class vehicle:
    def __init__(self,name):
        self.name=name
    def xingshi(self):
        print("%s正在公路上行驶...."%self.name)
class kcar(vehicle):
    def __init__(self,name,zaizhong):
        vehicle.name=name
        self.zaizhong=zaizhong
    def xingshi(self):
        super().xingshi()
class hcar(vehicle):
    def __init__(self,name,count):
        vehicle.name=name
        self.count=count

k=kcar('卡车',9000)
k.xingshi()
print("卡车的载重是%d吨"%(k.zaizhong))
h=hcar('火车',10)
h.xingshi()
print("火车的车箱个数是%d"%(h.count))







  • 3
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值