python3 类和对象理解_通俗易懂的 理解 Python3类和对象

类(Class): 用来描述具有相同的属性和方法的对象的集合。它定义了该集合中每个对象所共有的属性和方法。类=属性+方法

通俗的讲:类 :  动物,在你脑子里有个模型,一想到动物就会知道比如有毛啊,四条腿之类的。就是所有动物共有的特征。

对象:具体的一只猫。或具体的一只狗,这就是对象。 对象是建立字类的基础上的。有了一个类的模版,我们才能确定某一个具体的对象。

基本语法:

class ClassName: #注意 第一个字母需要大写

.

.

类的隐藏变量

class Yao:

__name = "yaopengfei" #定义一个隐藏属性

def getName(self):

return self.__name

y = Yao() #引用的时候一定后面要跟() ps我TMD忘记查了半天

y.getName()

#结果

#yaopengfei

示例:

包含隐藏变量的设定,类的继承。

#定义一个类

class people:

name = "" #变量赋值就是类的属性

age = 0

__weight = 0 #这部分定义一个私有属性,外部不能访问,且不能输出。格式为两个下划线

#定义构造方法

def __init__(self,n,a,w): #使用def定义一个方法,但是与函数定义不同,必须包含self参数,并且作

#为一个参数,self代表的类的实例。

self.name = n

self.age = a

self._weight = w

def speak(self): #定义一个使用方法

print('%s 说:%d 岁。' %(self.name,self.age))

# 实例化类

p = people('runoob',10,30)

p.speak()

#定义一个子类

class student(people):

grade = ''

def __init__(self,n,a,w,g): #重新定义父类的构造

people.__init__(self,n,a,w) #调用父类的

self.grade = g

def speak(self): #重新定义父类的方法

print(111)

print("%s 说: 我 %d 岁了,我在读 %d 年级"%(self.name,self.age,self.grade))

s = student('ken',10,89,3)

s.speak()

类 ,类对象和类实例区分

class X: #表示定义一个类

count = 0 #类对象的属性

a = X() #赋值

b = X()

c = X()

a.count #成为实例对象

0

b.count

0

c.count

0

c.count += 10 # 实例属性赋值后,会将类的属性覆盖掉

c.count

10

a.count

0

b.count

0

X.count += 100 #使用类属性赋值后,其他未被定义过的实例属性保持与类属性一致。

a.count

100

b.count

100

c.count # 赋值的c.count 还会保持原来赋值后的属性。

10

如果赋值的变量名和类的名称一致。将无法调用类的属性。

所有不要试图在一个类定义所有的能想到属性和方法,可以继承和组合的机制扩展,类的方法尽量用动词,类的属性用名词。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值