#coding=utf-8

class Person(object):
    def __init__(self,name,age):
        self.name=name
        self.age=age

def get_age(self):
        return self.age

def get_name(self):
        return self.name

def set_age(self,age):
        if age>=0 and age<=150:
            self.age=age

def set_name(self,name):
        self.name=name

class SchoolMember(Person):
    def __init__(self,name,age,school_name):
        Person.__init__(self,name,age)
        self.school_name=school_name

def get_school_name(self):
        return self.school_name

def set_school_name(self,school_name):
        self.school_name=school_name
       
class Student(SchoolMember):
    def __init__(self,name,age,school_name,grade):
        SchoolMember.__init__(self,name,age,school_name)
        self.grade=grade

def get_grade(self):
        return self.grade

def set_grade(self,grade):
        self.grade=grade

class Teacher(SchoolMember):
    def __init__(self,name,age,school_name,level):
        SchoolMember.__init__(self,name,age,school_name)
        self.level=level

def get_level(self):
        return self.level

def set_level(self,level):
        self.level=level

if __name__=='__main__':
    p=Person('xiaxiaoxu',18)
    print p.get_age()
    print p.get_name()
    p.set_name('sam xia')
    p.set_age(20)
    print p.get_age()
    print p.get_name()
    s=SchoolMember('xiaxiaoxu',18,'dalian maritime university')
    print s.get_school_name()
    s.set_school_name('peking university')
    print s.get_school_name()
    t=Student('xiaxiaoxu',20,'peking university','grade one')
    print t.get_grade()
    t.set_grade('grade two')
    print t.get_grade()
    th=Teacher('xiaxiaoxu',20,'dalian maritime university','professor')
    print th.get_level()
    th.set_level('teacher')
    print th.get_level()

c:\Python27\Scripts>python task_test.py
18
xiaxiaoxu
20
sam xia
dalian maritime university
peking university
grade one
grade two
professor
teacher

pythonl类继承例子的更多相关文章

  1. javascript类继承的一些实验

    其实一开始编js没怎么用过对象,一般都用func,func,func···但是用多了,感觉代码一点都不美观,还要这里包一个函数,那里包一个函数,或者一直都是函数调用,不好看,而且一些重用的都要重写的话 ...

  2. C++中public,protected,private派生类继承问题和访问权限问题

    C++中public,protected,private派生类继承问题和访问权限问题 当一个子类从父类继承时,父类的所有成员成为子类的成员,此时对父类成员的访问状态由继承时使用的继承限定符决定. 1. ...

  3. Javascript类继承-机制-代码Demo【原创】

    最近看到<Javascript设计模式>,对js模拟的”继承方式“有了更深一步的了解,虽然之前也总是用到prototype.new ,但只是知其然不知所以然,现在将类继承的方法整理如下,暂 ...

  4. smartjs 0.2 OOP讲解 - Klass 类继承

    SmartJS2.0加入OOP的功能.OOP包括klass与factory两个对象. Klass 类继承 与其他的类继承相比,smartjs使用了执行指针的概念(后面例子中会介绍),另外提供base基 ...

  5. C++——类继承

    类库:类库由类声明和实现构成.类组合了数据表示和类方法,因此提供了比函数库更加完整的程序包. 类继承:从已有的类派生出新的类,派生类继承了原有类(称为基类)的特征,包括方法. 通过类继承可以完成的工作 ...

  6. C++学习笔记(十二):类继承、虚函数、纯虚函数、抽象类和嵌套类

    类继承 在C++类继承中,一个派生类可以从一个基类派生,也可以从多个基类派生. 从一个基类派生的继承称为单继承:从多个基类派生的继承称为多继承. //单继承的定义 class B:public A { ...

  7. python类继承

    面向对象的编程带来的主要好处之一是代码的重用,实现这种重用的方法之一是通过 继承 机制.继承完全可以理解成类之间的 类型和子类型 关系. 假设你想要写一个程序来记录学校之中的教师和学生情况.他们有一些 ...

  8. Java:验证在类继承过程中equals()、 hashcode()、toString()方法的使用

    以下通过实际例子对类创建过程汇中常用的equals().hashcode().toString()方法进行展示,三个方法的创建过程具有通用性,在项目中可直接改写. //通过超类Employee和其子类 ...

  9. python 全栈开发,Day20(object类,继承与派生,super方法,钻石继承)

    先来讲一个例子 老师有生日,怎么组合呢? class Birthday: # 生日 def __init__(self,year,month,day): self.year = year self.m ...

随机推荐

  1. python-django开发学习笔记二

    1.简述 1.1 开发环境 该笔记所基于的开发环境为:windows8.python2.7.5.psycopg2-2.4.2.django1.5.4.pyCharm-2.7.3.以上所描述的软件.插件 ...

  2. python中的字符串切片

    python中的字符串切片,似乎有点乱,例如: >>>pystr='Python' >>>pystr[2:5] 就会输出 'tho' 这该怎样理解呢?中括号[2:5 ...

  3. Kettle 4.2源码分析第一讲--Kettle 简介

    Pentaho Data Integration(PDI)简介 1. PDI结构简介 图 1‑1 PDI核心组件 Spoon是构建ETL Jobs和Transformations的工具.Spoon可以 ...

  4. Jmeter(五)_函数

    JMeter提供了很多函数,如果能够熟练使用,可以为脚本带来很多方便. JMeter函数是一种特殊值,可用于除测试计划外的任何组件. 函数调用的格式如下所示:${__functionName(var1 ...

  5. Windows server 2016 安装及ORACLE 12C 安装

    首先创建虚拟机,选择windows server 2016 启动虚拟机,进入安装界面,语言默认中文,选择下一步 选择标准安装(桌面) 选择接受条款 选择自定义安装 进行分区,如下图所示 进行安装 设定 ...

  6. 网站优化不等于搜索引擎优化SEO

    对于SEO相信搞网络营销的人基本上都知道这个名词,英文全称为search engine optimization,中文一般叫搜索引擎优化,也有的叫搜索引擎定位(Search Engine Positi ...

  7. 洛谷P3243 [HNOI2015]菜肴制作 拓扑排序+贪心

    正解:拓扑排序 解题报告: 传送门! 首先看到它这个约束就应该要想到拓扑排序辣QwQ 首先想到的应该是用优先队列代替队列,按照节点编号排序 然后也很容易被hack:<5,1> 正解应为5, ...

  8. 洛谷P1967 货车运输 [noip2013] 图论

    正解:kruskal+LCA 解题报告: 哇真实心痛了...明明都没多少时间了我居然耗了一个上午+一个中午在上面?哭死辽我QAQ果然菜是原罪QAQ 然后这题,我先港下60pts做法趴?话说其实我觉得我 ...

  9. 007-jdk1.6版本新特性

    一.JDK1.6 名称:Mustang(野马) 发布日期:2006-04 新特性: 1.1.AWT新增加了两个类:Desktop和SystemTray[忽略] 前者可以用来打开系统默认浏览器浏览指定的 ...

  10. 1.cassandra的搭建

    参考: https://blog.csdn.net/ch648966459/article/details/51671276