面向对象 继承

利用封装和继承的特性完成如下操作:

          小学生:

                   属性:

                            姓名

                            学号

                            年龄

                            性别 

                   行为:

                            学习

                            打架

          中学生:

                   属性:

                            姓名

                            学号

                            年龄

                            性别 

                   行为:

                            学习

                            谈恋爱

          大学生:

                   属性:

                            姓名

                            学号

                            年龄

                            性别 

                   行为:

                            学习

                            打游戏

          测试类中:

                   创建小学生对象

                            调用学习的方法

                                      打印内容为: xx 学习的内容为:语文数学 英语

                   创建中学生对象

                            调用学习的方法

                                      打印内容为:xx 学习的内容为:语数外生物化 史地政

                   创建大学生对象

                            调用学习的方法:

                                      打印内容为: 逃课中。。。。。。


父类模块
class Father():
    def __init__(self,name,sno,age,sex):
        self.name=name;
        self.sno=sno;
        self.age=age;
        self.sex=sex;

    @property
    def name(self):
        return self.__name;
    @name.setter
    def name(self,name):
        self.__name=name;

    @property
    def sno(self):
        return self.__sno;
    @sno.setter
    def sno(self, sno):
        self.__sno = sno;

    @property
    def age(self):
        return self.__age;
    @age.setter
    def age(self, age):
        self.__age = age;


    @property
    def sex(self):
        return self.__sex;
    @sex.setter
    def sex(self, sex):
        self.__sex = sex;

    def action(self):
        print('学习');

小学生模块
第一行代码是调用父类模块
from class1.zuoye.diertian.diyiti.father import Father;
class XiaoXueSheng(Father):
    def __init__(self,name,sno,age,sex):
        super().__init__(name,sno,age,sex);

    def action(self):
        print('小学生%s学习的内容为:语文 数学 英语'%(self.name));
    def action1(self):
        print('打架');

中学生模块
第一行代码是调用父类模块
from class1.zuoye.diertian.diyiti.father import Father;
class ZhongXueSheng(Father):
    def __init__(self,name,sno,age,sex):
        super().__init__(name,sno,age,sex);

    def action(self):
        print('中学生%s学习的内容为:语数外 生物化 史地政'%(self.name));
    def action1(self):
        print('谈恋爱');
大学生模块
第一行代码是调用父类模块
from class1.zuoye.diertian.diyiti.father import Father;
class DaXueSheng(Father):
    def __init__(self,name,sno,age,sex):
        super().__init__(name,sno,age,sex);

    def action(self):
        print('大学生逃课中。。。。。。');
    def action1(self):
        print('打游戏');
测试模块
调用父类、小学生、中学生、大学生模块
from class1.zuoye.diertian.diyiti.father import Father;
from class1.zuoye.diertian.diyiti.daxuesheng import DaXueSheng;
from class1.zuoye.diertian.diyiti.xiaoxuesheng import XiaoXueSheng;
from class1.zuoye.diertian.diyiti.zhongxuesheng import ZhongXueSheng;

def main():
    x=XiaoXueSheng('张三',10000,10,'男');
    z=ZhongXueSheng('李四',10001,15,'男');
    d=DaXueSheng('王五',10010,20,'男');
    x.action();
    z.action();
    d.action();




if __name__ == '__main__':
    main();


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值