python中类的继承与方法重写_Python类继承,方法重写及私有方法

# -*- coding: utf-8 -*-

"""

Created on Mon Nov 12 15:05:20 2018

@author: zhen

"""

class Aricraft:

mileages = 0.0 # 类变量,在该类及其子类的实例中共享

def __init__(self, engine, speed):

self.engine = engine

self.speed = speed

def fly(self, miles):

Aricraft.mileages += miles

print("the aircrift has", Aricraft.mileages, "miles")

aricraft = Aricraft("涡扇9", "800km/h")

aricraft.fly(1000)

aricraft.fly(600)

class Fighter(Aricraft): # 继承

def __missile(self): # 私有方法,只能类内访问

print("emission missile !")

def fly(self, miles):

Aricraft.mileages += miles

print("the fighter has", Aricraft.mileages, "miles")

Fighter.__missile(self)

fighter = Fighter("涡扇15", "1200km/h")

fighter.fly(1800)

fighter.fly(1600)

# fighter.__missile() AttributeError: 'Fighter' object has no attribute '__missile'

结果:

python类继承的重写和super

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

创建线程时如果既传入了runnable对象,又继承thread重写了run方法,会执行的哪里的代码

1 使用线程的方式,继承thread类,重写run方法 new Thread() { @Override public void run() { System.out.println("我是 ...

python 类继承演示范例的代码

把做工程过程重要的代码片段备份一次,下面的资料是关于python 类继承演示范例的代码. # a simple example of a class inheritance # tested with ...

es6 class类实例、静态、私有方法属性笔记

实例属性.方法 class Foo { valueA = 100 //第一种实例属性定义,位置:new的实例上 constructor() { this.valueB = 200 //第二种实例属性定 ...

python类中的__init__和__new__方法

Python中类: Python中在创建类的过程中最先调用的不是__init__方法而是__new__方法,__new__方法是一个静态方法,在创建一个类对象时其实是通过__new__方法首先创建出一 ...

Python: 类中为什么要定义__init__()方法

学习并转自:https://blog.csdn.net/geerniya/article/details/77487941 1. 不用init()方法定义类 定义一个矩形的类,目的是求周长和面积. c ...

Python类继承(转发)

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

python类继承

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

随机推荐

css3 -- 伪类与伪元素

伪类: 1.结构伪类 A:E : first-child{} E : nth-*(n){} E : first-*(even){}  E : first-*(odd){} B:nth-child 是根 ...

mySQL优化 my.ini 配置说明

[mysqld] port = 3306 serverid = 1 socket = /tmp/mysql.sock skip-name-resolve #禁止MySQL对外部连接进行DNS解析,使用 ...

【MATLAB】用MATLAB绘制奥运五环

[MATLAB]用MATLAB绘制奥运五环 今天用MATLAB绘制了一个奥运五环,好吧,实际上是帮人做作业,嘿嘿. 贴代码: clear; clc; N = 1000; angle = linspac ...

Asp.Net Core基于JWT认证的数据接口网关Demo

近日,应一位朋友的邀请写了个Asp.Net Core基于JWT认证的数据接口网关Demo.朋友自己开了个公司,接到的一个升级项目,客户要求用Aps.Net Core做数据网关服务且基于JWT认证实现对 ...

mongodb突然出现不是内外部命令或可执行

可能因为晚上突然停电,电脑突然关机,给mongoDB造成影响,第二天出现了: 通过百度搜索与尝试:https://blog.csdn.net/hh12211221/article/details/78 ...

HttpRequest获得服务端和客户端的详细信息

参考文档:http://blog.csdn.net/u012104100/article/details/43051301 http://blog.csdn.net/u011162260/articl ...

Java知多少(16)StringBuffer与StringBuider

String 的值是不可变的,每次对String的操作都会生成新的String对象,不仅效率低,而且耗费大量内存空间. StringBuffer类和String类一样,也用来表示字符串,但是Strin ...

centos 中文乱码解决途径

在使用CentOS系统时,安装的时候可能你会遇到英文的CentOS系统,在这中情况下安装CentOS系统时是默认安装(即英文).安装完毕后,出现的各种中文乱码.那么,我们如何解决这种问题呢. 一.Ce ...

java定时器学习

一.这个是利用jdk自带的Thread类的sleep方法实现定时执行任务. package tasker; import java.util.Date; public class tasker01 e ...

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值