Python中的类与对象

类与对象

类(class)

类是多个类似事物组成的群体的统称。能够帮助我们快速理解和判断事物的性质,类是对象的抽象表示
类是对象的属性和行为的进一步封装模板,不同类的属性和行为不同
类是用来描述具有相同属性和方法的的对象的集合,类的属性和方法是集合中所有对象所共有的

创建类的语法

class 类名:
语法快

类的构造方法

使用__init__进行初始化创建类的特殊方法,也称作构造函数

class Animal:
    def __init__(self):
        print('疯狂动物园')
zoo = Animal()

注意:self不可以漏掉,构造方法的返回值必须是None

类的属性

属性(成员变量、类变量)必须使用self.进行赋值
slef 指的是实例本身,也可以说是指针

print('--------------------------类的属性--------------------------')
class Animal:
    def __init__(self, name):
        self.name = name
        self.year = 100
zoo = Animal('疯狂动物园')
print(zoo.name)
print(zoo.year)

类中的方法

类的方法和函数的定义方法一样,只是需要定义在类里面,第一个参数必须是self

print('--------------------------类中的方法--------------------------')
class Animal:
    def __init__(self, name):
        self.name = name
    def tiger(self):
        print('我是:', self.name)
zoo = Animal('tiger')
zoo.tiger()

类的私有属性

定义属性名字的时候使用两条下划线开头,外部不可以直接访问私有属性

print('--------------------------类的私有属性--------------------------')
class Animal:
    def __init__(self, name):
        self.__name = name
    def tiger(self):
        print('我是:', self.__name)
zoo = Animal('tiger')
zoo.tiger()
# print(zoo..__name)

类属性、类方法、静态方法

类属性:类中方法外的变量称为类属性,被该类的所有对象所共享
类方法:使用@classmethod修饰的方法,使用类名直接访问的方法
静态方法:使用@staticmethod修饰的主法,使用类名直接访问的方法
print(Student.native_place) #访问类属性
Student.cm() #调用类方法
Student.sm() #调用静态方法
静态方法在程序开始时生成内存,实例方法在程序运行中生成内存

print('-------------------类属性、类方法、静态方法----------------------')
class Animal:
    aa = 'ss'
    def __init__(self, name, year): # 初始化类属性
        '''
        self.name称为实体属性,
        进行了一个赋值操作,
        将局部变量name的值赋给实体属性
        '''
        self.name = name
        self.year = year
    def tiger(self): # 实例方法
        print('sss')
    @staticmethod # 静态方法
    def method():
        print('静态')
    @classmethod # 类方法
    def method1(cls):
        print('类')
print('1.', Animal.aa)
a1 = Animal('dd', 10) # 实例对象
a2 = Animal('ee', 20)
print('2.', a1.aa)
print('3.', a2.aa)
Animal.aa = 'rr'
print('4.', a1.aa)
print('5.', a2.aa)
Animal.method()
Animal.method1()

在这里插入图片描述

对象

100、12、122都是int类之下包含的相似的不同个例,这个个例专业术语称为实例或对象
万物皆对象,对象具有属性和行为(状态和方法)
对象也是类的实例

对象的创建

对象的创建又称为类的实例化
创建类的语法
实例名=类名()
对象名.方法名()
意义:有了实例,就可以调用类中的内容

print('--------------------------类中的方法--------------------------')
class Animal:
    def __init__(self, name):
        self.name = name
    def tiger(self):
        print('我是:', self.name)
zoo = Animal('tiger')
zoo.tiger() #对象名.方法名()
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值