Dog类
它表示的不是特定的小狗,而是所有的狗的一个抽象分类。
我们可以抽象Dog狗的很多东西。当然我们这里挑几个常用的
比如属性上 狗有名有年龄。行为上会打滚会坐下。
类是无法具体说那个的。就好比人类
我们无法指出一个具体 人类。但是我们可以通过人类创建一个具体的人。比如小明 小强。所以类是一种抽象。一种分类。
根据约定Python中。首字母大写的名称用来表示类。
同样类也有文档字符串
"""一次模拟小狗的简单尝试"""
方法__init__()
类中的函数称为方法
方法__init__()是一个特殊的方法,
每当你根据Dog 类创建新实例时,Python都会自动运行它。
在这个方法的名称中,
开头和末尾各有两个下划线, 这是一种约定, 旨在避免Python默认方法与普通方法发生名称冲突。
我们这里的构造方法__init__()定义成了包含三个形参:self 、 name 和age
形参self 必不可少,
还必须位于其他形参的前面
Python调用这个__init__()方法来创建Dog 实例时,
将自动传入实参self
类本身的方法或者属性可以通过这个self调用。
它是一个指向实例本身
的引用, 让实例能够访问类中的属性和方法。
创建Dog 实例时, Python将调用Dog 类的方法__init__()。
我们将通过实参向Dog()传递名字和年龄;self 会自动传递 ,我们不需要传递它
每当我们根据Dog 类创建实例时,
都只需给最后两个形参( name和age ) 提供值
wangCai
= Dog("旺财",2)
Python中定义属性比较特别
__init__()定义的两个变量都有前缀self 。 以self 为前缀的变量都可供类中的所有方法使用, 我们还可以通过类的任何实例来访问这些变量。
def __init__(self, name, age):
"""初始化属性name和age"""
self.name = name
self.age = age
print(name + "正在生产中..")
像这样可通过实例访问的变量称为属性
self相当于一个类内部的互相传递数据的一个东西。表示它自己。在所有的方法中self都是一个东西。
可以在构造函数里面调用sit方法
也可以在方法里面调用nameclassDog():
"""一次模拟小狗的简单尝试"""
def __init__(self,name, age):
"""初始化属性name和age"""
self.name = name
self.age = age
self.height = 12
self.sit()
print(name + "正在生产中..")
# 类中的函数称为方法
def sit(self):
"""模拟小狗被命令时蹲下"""
print(self.name.title() + "正在坐下."+str(self.height))
def roll_over(self):
"""模拟小狗被命令时打滚"""
print(self.name.title() + "
rolled over!")
相关知识
java测试类pet
定义一个宠物类(Pet),它有两个方法:叫cry(),吃东西eat(),定义宠物的子类狗(Dog),猫(Cat),覆盖父类的cry(),eat()方法,里面写System.out.println(“
案例驱动式Python学习笔记【第六篇】电子宠物
Python面向对象高级编程——多重继承
Object类、多态
java类笔试题
Python笔试题
java编程定义狗
多态应用
使用面向对象思想设计电子宠物系统
网址: python定义一个dog类 类属性有名字 https://m.mcbbbk.com/newsview187630.html
上一篇: 爱犬者必看哦:宠物狗伤人,主人要 |
下一篇: 当前病死动物无害化处理工作的状况 |