类
-
类的定义
关键字:class
class 类名:
类名的命名规范:每个单词的第一个字母必须是大写(大驼峰命名)
通过类创建对象:类名()
class Cat:
pass
# 通过类创建对象:类名()
kt = Cat()
-
类属性和实例(对象)属性
属性:定义在类中的变量
类属性:这类事物所有的对象都有这个属性,属性值都是一样的
直接在类里面定义的变量叫做类属性
实例属性:这类事物所有的对象都有这个属性,但是属性值不一样的
对象.属性 = 属性值(获取属性值)(不能通过类获取实例属性)
# 定义一个猫类
class Cat:
# 类属性
leg = "四条腿"
tail = "有尾巴"
# 通过类创建对象
dd = Cat()
kt = Cat()
# 定义实例属性
kt.age = 20
dd.age = 6
# 获取属性值:对象.属性 (不能通过类去获取实例属性)
kt.age
dd.age
# 通过对象可以获取类属性
print(kt.tail)
print(dd.tail)
# 通过类也可以获取类属性
print(Cat.tail)
定义实例属性通过初始化方法(__ init __)来定义
初始化方法:
创建对象的时候自动执行的,不需要手动调用这个方法
class Cat:
# 类属性
teg = "四条腿"
tail = "有尾巴"
# 定义实例属性通过初始化方法(__init__)来定义
def __init__(self, age, name):
# 定义实例属性
self.age = age
self.name = name
# (self:代表的就是对象(谁去调用这个方法,代表的就是谁))
print("正在给对象设置属性")
# 创建对象
kt = Cat(age=18,name="凯蒂")
print(kt)
hh = Cat(age=20,name='灰灰')
print(hh)
-
类的方法和实例方法
方法:就是定义在类中的函数
1、类方法
2、实例方法
定义在类里面的函数:叫做方法(本质上还是函数)
实例方法的第一个参数必须要写成self,这个参数是不需要传参的
class Cat:
teg = "四条腿"
tail = "有尾巴"
# 定义实例属性通过初始化方法(__init__)来定义
def __init__(self, age, name):
self.age = age
self.name = name
def skill1(self):
print('{}猫的技能1,吃鱼'.format(self.name))
def skill2(self):
print('{}猫的行为2:抓老鼠'.format(self.name))
# 创建对象
kt = Cat(age=18, name="凯蒂")
hh = Cat(age=20,name='灰灰')
# 通过对象调用实例方法
kt.skill1()
kt.skill2()
hh.skill1()
hh.skill2()