I CSDNブログコラム:HTTPS://blog.csdn.net/yty_7
Githubの住所ます。https://github.com/yot777/Python-Primary-Learning
8.2 継承と書き換え
継承:である、派生クラス(派生クラスは、)基本クラス(直接使用することができるベースクラス)プロパティとメソッド。サブクラスは、複数の親クラスを継承することができます。サブクラスは、独自のプロパティとメソッドを持つことができます。
書き直し:あなたが親クラスからサブクラスの継承のニーズを満たすことができない場合は、することができ、同じ名前の書き換え方法、このプロセスは、メソッド(カバーと呼ばれるオーバーライドもオーバーライドメソッドとして知られている)を、。
クラス継承構文:
クラスクラス名(BaseClass1 、[ BaseClass2]):
言葉遣いは、機能のようなビットを区別するために、いくつかのパラメータを非常に単純な定義されます
凡例:犬や猫の動物、およびインスタンス化オブジェクトから継承動物、:
Pythonの継承例:
class Animal:
def __init__(self,types,name,age):
self.types=types
self.name=name
self.age=age
def intro(self):
print('我是一只%s,名字是%s,年龄是%d岁' %(self.types,self.name,self.age))
def run(self):
print('我飞快的跑')
class Dog(Animal):
def __init__(self,types,name,age,hair):
'''初始化父类的属性,再初始化狗这个子类的特有属性'''
super().__init__(types,name,age)
self.hair=hair
def intro(self):
print('我是一只%s,名字是%s,年龄是%d岁,毛发颜色是%s' %(self.types,self.name,self.age,self.hair))
def look(self):
print('我会看家门')
class Cat(Animal):
def __init__(self,types,name,age,ear):
'''初始化父类的属性,再初始化猫这个子类的特有属性'''
super().__init__(types,name,age)
self.ear=ear
def intro(self):
print('我是一只%s,名字是%s,年龄是%d岁,耳朵长度是%s' %(self.types,self.name,self.age,self.ear))
def catches(self):
print('我会抓老鼠')
dog1=Dog('泰迪','小黑',3,'棕色')
dog1.intro()
dog1.run()
dog1.look()
dog2=Dog('拉布拉多','旺财',5,'金黄色')
dog2.intro()
dog2.run()
dog2.look()
cat1=Cat('波斯猫','小咪',2,'短耳')
cat1.intro()
cat1.run()
cat1.catches()
cat2=Cat('暹罗猫','花花',4,'长耳')
cat2.intro()
cat2.run()
cat2.catches()
运行结果:
我是一只泰迪,名字是小黑,年龄是3岁,毛发颜色是棕色
我飞快的跑
我会看家门
我是一只拉布拉多,名字是旺财,年龄是5岁,毛发颜色是金黄色
我飞快的跑
我会看家门
我是一只波斯猫,名字是小咪,年龄是2岁,耳朵长度是短耳
我飞快的跑
我会抓老鼠
我是一只暹罗猫,名字是花花,年龄是4岁,耳朵长度是长耳
我飞快的跑
我会抓老鼠
Javaの継承の例の最初の部分:
//Animal类
package com.yty.test2;
public class Animal {
public String types;
public String name;
public int age;
public Animal(String types,String name,int age){
this.types = types;
this.name = name;
this.age = age;
}
public void intro(){
System.out.println("我是一只"+this.types+",名字是"+this.name+",年龄是"+this.age+"岁");
}
public void run(){
System.out.println("我飞快的跑");
}
}
Java 第二部の継承の例:
//Dog类
package com.yty.test2;
public class Dog extends Animal{
public String hair;
public Dog(String types, String name, int age, String hair) {
super(types, name, age);
this.hair = hair;
}
@Override
public void intro(){
System.out.println("我是一只"+this.types+",名字是"+this.name+",年龄是"+this.age+"岁,毛发颜色是"+this.hair);
}
public void look(){
System.out.println("我会看家门");
}
}
Javaの継承の例パートIII:
//Cat类
package com.yty.test2;
public class Cat extends Animal{
public String ear;
public Cat(String types, String name, int age, String ear) {
super(types, name, age);
this.ear = ear;
}
@Override
public void intro(){
System.out.println("我是一只"+this.types+",名字是"+this.name+",年龄是"+this.age+"岁,耳朵长度是"+this.ear);
}
public void catches(){
System.out.println("我会抓老鼠");
}
}
Javaの継承の例パートIV:
//AnimalTest类
public class AnimalTest {
public static void main(String[] args) {
Dog dog1 = new Dog("泰迪","小黑",3,"棕色");
dog1.intro();
dog1.run();
dog1.look();
Dog dog2 = new Dog("拉布拉多","旺财",5,"金黄色");
dog2.intro();
dog2.run();
dog2.look();
Cat cat1 = new Cat("波斯猫","小咪",2,"短耳");
cat1.intro();
cat1.run();
cat1.catches();
Cat cat2 = new Cat("暹罗猫","花花",4,"长耳");
cat2.intro();
cat2.run();
cat2.catches();
}
}
运行结果:
我是一只泰迪,名字是小黑,年龄是3岁,毛发颜色是棕色
我飞快的跑
我会看家门
我是一只拉布拉多,名字是旺财,年龄是5岁,毛发颜色是金黄色
我飞快的跑
我会看家门
我是一只波斯猫,名字是小咪,年龄是2岁,耳朵长度是短耳
我飞快的跑
我会抓老鼠
我是一只暹罗猫,名字是花花,年龄是4岁,耳朵长度是长耳
我飞快的跑
我会抓老鼠
リファレンスチュートリアル:
Pythonのチュートリアルの遼雪峰
https://www.liaoxuefeng.com/wiki/1016959663602400
遼雪峰のJavaチュートリアル
https://www.liaoxuefeng.com/wiki/1252599548343744
Python3 教程 | 菜鸟教程
https://www.runoob.com/python3/
如果您觉得本篇本章对您有所帮助,欢迎关注、评论、点赞!Github欢迎您的Follow、Star!