对象变量与类变量

python是一门动态语言,不能和C++进行类比,因此创建对象变量时也不太一样。

我先创建了一个类,然后再写类中的方法的时一些参数,候,我创建了一写参数,其中有一个参数叫做self我可以通过这个self调用函数中的参数,从而创建一个对象变量,这个变量属于对象而不属于类

还有一种就是依据类进行创建对象

 

 

 

 

 

 

类与对象

python的类关键字是class,一个最简单的类:

class boy:

     def show(self):

            pass

属性

python是动态语言,所以他的属性不能和静态java或C++来对比。

class boy:

     number = 100 #公有属性 事实上就相当于静态变量,因为你使用            boy.number是可以访问的

创建实例属性有两种方法:

第一种是直接动态添加,先创建一个对象:

a = boy() 然后使用a.number是可以得到100的。想添加一个实例属性,

比如想添加一个age属性,a.age = 100,他就自动添加的了。但是这个实例对象只是属于这个对象的,此时你在创建一个新类b = boy(),b.age是报错的。因为这个age属性只是属于a这个对象。

第二种方法是在构造函数的时候构造一个属性。

def   __init__(self,name,age):

       self.name = name

       self.age = age

self就是相当于调用这个函数本身的对象,就像大家的房子都一样,但是住的人就是不一样的,self就相当于住的人。这样也可以创建对象,但是这样创建的对象就是所有boy的对象都可以访问了,因为这个构造函数在创建对象的时候被调用,就创建了name和age属性 ,所以大家都有了。

python是动态语言,所以他的属性也是动态的。

私有属性

python的私有属性其实就是在名字前加两个_,也就是说,把上面的number改成__number即可。但事实上,python的私有属性其实只是伪私有,其实他只是改了个名字。比如刚刚的__number,在内部,他其实把它名字改成了_类名__属性名,所以你可以通过a._boy__number访问到。

类方法

类的方法有几种:

构造方法:构造方法的名字一定要是__init__,并且传进去一个self,事实上所有的实例方法都要传进去一个self,表示这个对象调用了这个方法。

静态方法:静态方法就不用传递self,用

 

@staticmethod

修饰即可,类名.方法直接调用。

 

类方法:没看

实例方法:传递self然后做其他处理即可

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值