class在python中的意思_Python中类的理解,Class

说明Class之前,先写一个Python中Class的代码:

为了便于理解,首先定义三个类:OldMan 、 YoungMan 、Lawyer,其中Lawyer“多继承”前两个类。大概就是律师处理爸爸留给儿子的财产。

Class中的属性分为:基本属性和私有属性,

顾名思义,私有属性只能在当前类被使用,不能被其他类引用。比如OldMan中的名字和年龄__name __age,这是私有的,所以定义为私有属性(两个下划线),钱和车子则可以被继承,定为基本属性。

Class中的方法(也就是函数)分为:基本方法和私有方法,

如律师中的__init__(self,name,age,unuseless)仅能在Lawyer类中使用。

此外,__init__()是十分特殊的方法,当Class被调用时,它也会自动被调用。

一般用来给Class做初始化作用。

Class中的方法(也就是函数),在Class内部一定要写self(实例名),

因为Class直接指向内存,故一定要有实例名。在Class外部,对方法进行引用时,无需self。

另外,对于方法中的参数,用多少就要写多少,可以多写(如Lawyer.__init__中的unseless参数,只是输入了,但是没有被使用)。

引用Class类时,输入的参数严格按照__init__中定义的参数来,

比如a = Lawyer('太子',20,'45')。至于Lawyer方法中其它需要的参数,在引用该方法时再添加,如Lawyer.imformation('没什么用')。

***:Class引用时,可以直接改变其它Class中基本属性的值,

如程序运行结果可见,YoungMan.money和YoungMan.cars,经过Lawyer.distribute之后,值被改变了。

#定义“爸爸类”

class OldMan:

__name = '皇帝'

__age = 90

money = 1000000000

cars = '林肯加长版'

def imformation(self):

print('被继承者(爸爸)的信息:')

print('姓名:{} , 年龄:{} , 钱:{} , 车子:{}'.format(self.__name,self.__age,self.money,self.cars))

#定义“儿子类”

class YoungMan:

__name = '太子'

__age = 20

money = 0

cars = '自行车'

def imformation(self):

print('继承者(儿子)的信息:')

print('姓名:{} , 年龄:{} , 钱:{} , 车子:{}'.format(self.__name,self.__age,self.money,self.cars))

#定义一个“律师类”:

class Lawyer(OldMan,YoungMan):

#律师要给他们分配财产,就要先继承OldMan和YoungMan的信息(财产)

cars = []

money = 0

def __init__(self,name,age,unuseless):

OldMan.__init__(self)

YoungMan.__init__(self)

self.name = '太子'

self.age = '20'

def imformation(self,test):

OldMan.imformation(self)

YoungMan.imformation(self)

def distribute(self):

YoungMan.cars = [YoungMan.cars]

YoungMan.cars.append(OldMan.cars)

self.cars = YoungMan.cars

self.money = OldMan.money+YoungMan.money

print('继承财产之后:')

print('姓名:{} , 年龄:{} , 钱:{} , 车子:{}'.format(self.name,self.age,self.money,self.cars))

YoungMan.imformation(self)

a = Lawyer('太子',20,'45')

a.imformation('没什么用')

a.distribute()

b = YoungMan()

b.imformation()

结果:

被继承者(爸爸)的信息:

姓名:皇帝 , 年龄:90 , 钱:0 , 车子:[]

继承者(儿子)的信息:

姓名:太子 , 年龄:20 , 钱:0 , 车子:[]

继承财产之后:

姓名:太子 , 年龄:20 , 钱:1000000000 , 车子:['自行车', '林肯加长版']

继承者(儿子)的信息:

姓名:太子 , 年龄:20 , 钱:1000000000 , 车子:['自行车', '林肯加长版']

继承者(儿子)的信息:

姓名:太子 , 年龄:20 , 钱:0 , 车子:['自行车', '林肯加长版']

我觉得,目前掌握到这种程度,对于一些简单的面向对象编程,够用了,其它的日后深入

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值