把做工程过程重要的代码片段备份一次,下面的资料是关于python 类继承演示范例的代码。

# a simple example of a class inheritance
# tested with Python24 vegaseat 10aug2005 help('object') # test class Class1(object):
"""
Class1 inherits the most basic container class object (just a place holder)
this is the newer class writing convention, adding (object) is "still" optional
""" k = 7 def __init__(self, color='green'):
"""
Special method __init__() is called first (acts as Constructor).
It brings in data from outside the class like the variable color.
(in this case color is also set to a default value of green)
The first parameter of any method/function in the class is always self,
the name self is used by convention. Assigning color to self.color allows it
to be passed to all methods within the class. Think of self as a carrier,
or if you want impress folks call it target instance object.
The variable k is assigned a value in the class, but outside of the methods.
You can access k in a method using self.k
"""
self.color = color def Hello1(self):
print "Hello from Class1!" def printColor(self):
"""in this case self allows color to be passed"""
print "I like the color", self.color def __localHello(self):
"""
A variable or function with a double underline prefix and no or max. single
underline postfix is considered private to the class and is not inherited or
accessible outside the class.
"""
print "A hardy Hello only used within the class!" class Class2(Class1):
"""
Class2 inherits Class1 (Class2 is the subclass, Class1 the base or superclass)
Class1 has to be coded before Class2 for this to work!!!
Class2 can now use any method of Class1, and even the variable k
""" def Hello2(self):
print "Hello from Class2!"
print self.k, "is my favorite number" # the color blue is passed to __init__()
c1 = Class1('blue') # Class2 inherited method __init__() from Class1
# if you used c2 = Class2(), the default color green would be picked
c2 = Class2('red') print "Class1 says hello:"
c1.Hello1() print "Class2 says a Class1 hello:"
c2.Hello1() print "Class2 says its own hello:"
c2.Hello2() print "Class1 color via __init__():"
c1.printColor() print "Class2 color via inherited __init__() and printColor():"
c2.printColor() print "Class1 changes its mind about the color:"
c1 = Class1('yellow') # same as: c1.__init__('yellow')
c1.printColor() print "Wonder what Class2 has to say now:"
c2.printColor() # this would give an error! Class1 does not have a method Hello2()
if hasattr(Class1, "Hello2"):
print c1.Hello2()
else:
print "Class1 does not contain method Hello2()" # check inheritance
if issubclass(Class2, Class1):
print "Class2 is a subclass of Class1, or Class2 has inherited Class1" # you can access variable k contained in Class1
print "Variable k from Class1 =", c1.k # this would give an error! You cannot access a class private method
if hasattr(Class1, "__localHello()"):
print c1.__localHello()
else:
print "No access to Class1 private method __localHello()"

  

python 类继承演示范例的代码的更多相关文章

  1. python类继承

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

  2. Python 类继承,__bases__, __mro__, super

    Python是面向对象的编程语言,也支持类继承. >>> class Base: ... pass ... >>> class Derived(Base): ... ...

  3. 第7.7节 案例详解:Python类继承机制

    本节实现一个类继承的小程序,下面一边结合代码一边介绍相关继承的知识.例子以车.汽车为例,车为父类.汽车为子类. 一.    定义父类Vehicle class Vehicle():    def __ ...

  4. Python类继承(转发)

    目录 一.概述 二.类的继承 2.1 继承的定义 2.2 构造函数的继承 2.3 子类对父类方法的重写 三.类继承的事例 回到顶部 一.概述 面向对象编程 (OOP) 语言的一个主要功能就是“继承”. ...

  5. python 类 - 继承

    继承 什么是继承? 编写类时,并非总要从空白开始.如果要编写的类是另一个现成类的特殊版本,可使用继承. 一个类继承另一个类时,将自动获得另一个类的所有属性和方法.现有的类称为父类,而新类称为子类. 子 ...

  6. python类继承的重写和super

    给已经存在的类添加新的行为,继承是非常好的实现方式.但是如果要改变行为呢?比如在Python继承扩展内置类,我们的contact类只允许一个名字和一个邮箱,但是如果要对某些人增加电话号码呢?这里可以通 ...

  7. python 类继承与子类实例初始化

    From: https://blog.csdn.net/cs0301lm/article/details/6002504?utm_source=blogxgwz4 [ 先贴参考书籍原文(中文英文对照) ...

  8. python 类继承

    #!/usr/bin/python # Filename: inherit.py class SchoolMember: '''Represents any school member.''' def ...

  9. python类继承中构造子的调用

    python面向对象中的继承关系中,子类对父类的构造方法的调用有两种方法: 父类名.__init__(self,参数) #注意名字是父类 super(本子类名,self)__init__(其他参数) ...

随机推荐

  1. [Swift]LeetCode136. 只出现一次的数字 | Single Number

    Given a non-empty array of integers, every element appears twice except for one. Find that single on ...

  2. [Swift]LeetCode406. 根据身高重建队列 | Queue Reconstruction by Height

    Suppose you have a random list of people standing in a queue. Each person is described by a pair of ...

  3. [Swift]LeetCode643. 子数组最大平均数 I | Maximum Average Subarray I

    Given an array consisting of n integers, find the contiguous subarray of given length k that has the ...

  4. [Swift]LeetCode1014. 最佳观光组合 | Best Sightseeing Pair

    Given an array A of positive integers, A[i] represents the value of the i-th sightseeing spot, and t ...

  5. asp.net core 系列 8 Razor框架路由(下)

    三.页面路由操作约定 接着上篇讲asp.net core 系列 7 Razor框架路由.在上篇继续第三节 "页面路由操作约定" 的最后一小节 AddPageRoute . 3.3. ...

  6. Java序列化和反序列化,你该知道得更多

    序列化 (Serialization)是将对象的状态信息转换为可以存储或传输的形式的过程.在序列化期间,对象将其当前状态写入到临时或持久性存储区.以后,可以通过从存储区中读取或反序列化对象的状态,重新 ...

  7. Koa 框架常用知识点整理

    简介 Koa 就是一种简单好用的 Web 框架.它的特点是优雅.简洁.表达力强.自由度高.本身代码只有1000多行,所有功能都通过插件实现. 学前准备 检查Nodejs版本 打开cmd命令行窗口nod ...

  8. C#2.0之可空类型

    可空类型Nullable<T> 在C#2.0之前 ,值类型一直不可以为null,但是实际开发中常常会有这样的需求,比如结束时间. 为什么不可以为null 对于引用类型来说,null代表着空 ...

  9. spring cloud 配置zuul实用

    在线演示 演示地址:http://139.196.87.48:9002/kitty 用户名:admin 密码:admin 技术背景 前面我们通过Ribbon或Feign实现了微服务之间的调用和负载均衡 ...

  10. RDIFramework.NET ━ .NET快速信息化系统开发框架 V3.2->新增“行政区域管理”,同时大批量树采用异步加载

    行政区划:简称政区,是国家为了进行分级管理而实行的区域划分.中国现行的行政区划实行如下原则:1.全国分为省.自治区.直辖市:2.省.自治区分为自治州.县.自治县.市:3.自治州分为县.自治县.市:4. ...