#Python3 中类的封装,构造方法的定义,实例化属性,和共有属性 #把具有相同特征的一类东西抽象成一个类 #1,类的定义 关键字:Class #类和方法的命名都是驼峰命名规则,但是类的首字母大写,方法的首字母小写 class Animal(object): #这里定义了一个Animal类,继承了object基类 pass #注意,任何类都会继承object基类,所以定义类的时候可以 object可写可不写 # 使用类的时候需要先实例化 an=Animal() #实例化类 现在an这个对象就得到了Animal的所有方法和属性 #2,类中构造方法的学习 class Animal1(object): #这里定义了一个Animal类,继承了object基类 def __init__(self): #这是构造方法,构造方法中必须加参数self print('对象只要被实例化,我就会被调用,可以把我理解成初始化方法') a=Animal1() #实例化Animal1类,自动输出构造方法 #实例化构造对象的时候必调用构造方法,构造方法的写法 只能是 __init__ #如果声名类的时候没有定义构造方法,那就会默认调用父类的构造方法 # __init__(self) 中的self这个参数意思是实例化对象自己 ''' #实例化对象调用类中方法的时候一定会默认传一个参数,这个默认参数就是把自己传进去 #所以说只有在类中有(self)参数的方法,才能被实例调用, #如果类中的方法没有self参数, #那么这个方法只能被类调用,不能被类的实例化调用 ''' #属性,实例化属性,和类属性 #类属性又叫共有属性 class Animal2(): #定义一个Animal2()类,虽然没写object 但是它默认继承 def __init__(self,name): #定义构造方法 self.name=name #这个叫实例化属性 在方法中定义的叫实例化属性 def getName(self): print(self.name) #问 为什么我getName中没有定义name属性,我可以输出 #因为,类在实例化的时候得到了自己的name属性,我们把self对象穿进去就有了name属性 #类属性 class Animal3(): #定义一个Animal3()类 age=2 #这个age是共有属性 def __init__(self,name): #定义构造方法 self.name=name #这个叫实例化属性 在方法中定义的叫实例化属性 def getName(self): print(self.name) ''' 当共用属性被实例化调用的时候,共用属性会变成实例化属性,切记 '''
Python 3.6 定义类中的方法和属性
猜你喜欢
转载自blog.csdn.net/u012593871/article/details/78376080
今日推荐
周排行