013: class and objects > 简单继承

1. 所有的class全部直接或者间接的继承与object.

2. super()方法可以用来访问父类的方法,如果子类拥有和父类同名的方法,则子类会重写父类的方法。

3. 类级别的成员的定义后,所有的子子孙孙共享一个类级别的成员

class Contact(object):
    # 类级别的成员变量
    contact_list = []
    def __init__(self, name, email, telephone):
        # 对象级别的成员变量
        self.name = name
        self.email = email
        self.telephone = telephone

        Contact.contact_list.append(self)    

Contact_A = Contact(‘Tom‘, ‘[email protected]‘, 123456)
Contact_B = Contact(‘Lucy‘, ‘[email protected]‘, 123457)

print(‘Contact:‘)
for c in Contact.contact_list:
    print(c.name)        

class Friend(Contact):
    friend_list = []
    # 重写父类的方法
    def __init__(self, name, email, telephone, age):
        # 调用父类的方法
        super(Friend, self).__init__(name, email, telephone)
        self.age = age
        Friend.friend_list.append(self)

Friend_A = Friend(‘Jack‘, ‘[email protected]‘, 123458, 22)
Friend_B = Friend(‘Jim‘, ‘[email protected]‘, 123459, 23)    

# It is a little strange that the child class has quite the same contact_list
print(Contact.contact_list)
print(Friend.contact_list)

print(‘Friends:‘)

for f in Friend.friend_list:
    print(f.name, f.age)            
时间: 2024-10-07 22:24:24

013: class and objects > 简单继承的相关文章

实现Java简单继承

面向对象练习-简单继承 一.完成教师类的创建 说明: id 代表身份证号 name 表示姓名 birth 表示出生日期 title 表示职称(讲师,副教授,教授等) 二.完成学生类的创建 说明: major 代表专业 三.编写主类测试 四.使用继承的方法来实现类之间的关系设计. 代码实现: 1 class Person{ 2 String id,name,birth; 3 public Person() { 4 } 5 public Person(String id,String name,St

JavaScript简单继承

很多C#或C++开发人员习惯使用继承来开发项目,所以当他们想学习JavaScript语言时,第一个问题一般是:“我怎么在JavaScript中使用继承?”. 实际上JavaScript使用了一种不同于C#或C++的方法来创建面向对象语言.它是基于prototype的语言.原型概念表明行为是可以通过clone已经存在的对象来作为原型复用的.在JavaScript中每个对象都有原型,它定义了一系列对象可以使用的方法和成员.没有class,只有对象.每一个对象可以作为另一个对象的原型. 这个概念是非常

cocos2d JS -> JavaScript 中的简单继承关系

p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 18.0px "PingFang SC" } p.p2 { margin: 0.0px 0.0px 0.0px 0.0px; font: 18.0px "PingFang SC"; min-height: 25.0px } span.Apple-tab-span { white-space: pre } JavaScript 语言本身没有提供类,没有其他语言的类继承机制,它的

C++中虚函数的理解,以及简单继承情况下的虚函数的表!

面向对象的三大特征=封装性+继承性+多态性 封装=将客观事物抽象成类,每个类对自身的数据和方法实行权限的控制 继承=实现继承+可视继承+接口继承 多态=将父类对象设置成为和一个或者更多它的子对象相等的技术, 用子类对象给父类对象赋值之后, 父类对象就可以根据当前赋值给它的子对象的特性一不同的方式运作 C++的空类有哪些成员函数 1.缺省构造函数 2.缺省拷贝构造函数 3.缺省析构函数 4.缺省赋值运算符 5.缺省取址运算符 6.缺省取址运算符const PS:只有当实际使用的时候才会去使用这些类

纯C语言实现简单继承机制

0 继承是OO设计的基础 继承是OO设计中的基本部分,也是实现多态的基础,C++,C#,Objective-C,Java,PHP,JavaScript等为OO而设计的语言,其语言本身对实现继承提供了直接支持.而遵循C/Unix设计哲学的语言,从不限定编程风格,而且提供了实现OO的基本支持.下面我们就来看看如何用C语言实现继承. 1 内存布局层面上继承的含义 如今几乎所有程序员都知道继承的抽象含义,对于被用烂了的猫狗继承动物的例子也耳熟能详.在此,我们抛开抽象世界,深入到继承的具体实现上.当然不同

简单继承例子:java

通用类,来继承出圆和矩形. package circle; public class Geometric { private String color="white"; private boolean filled; private java.util.Date dateCreated; public Geometric(){ dateCreated=new java.util.Date(); } public Geometric(String color,boolean filled

node.js使用util实现简单继承

/** * Created by zzq on 2015/5/15. */ var util = require('util'); var Person = function(){ var myD='1'; this.name = "a", this.age = "18", this.adress = "地球" } var Student = function(){ //获取父类的所有成员 Person.call(this); this.No =

js 中对象的简单创建和继承

对象的简单创建 1.通过对象直接量创建 比如 var obj = {}; 2.通过new 创建 比如 var obj = new Object(); // 相当于var obj = {}; var arr = new Array(); 3.使用 Object.create() 这个方法有两个参数,第一个参数是这个对象的原型,第二个参数用以对对象的属性进行进一步描述(可选) var obj = Object.create({x:1}); var obj1 = Object.create(null)

python-类的继承

1.简单继承 class F1: #父类,或者基类 def show(self): print('F1.show') class F2(F1): #表示F2继承F1.F2叫子类,或者派生类 def bar(self): print('bar') obj = F2() obj.show() obj.bar() out: F1.showbar 2.父类和子类有相同的方法,优先执行子类中的方法 class F1: #父类,或者基类 def show(self): print('F1.show') cl