开启掘金成长之旅!这是我参与「掘金日新计划 · 12 月更文挑战」的第13天,点击查看活动详情
面向对象
编程语言最重要的一个概念就是类,懂了类才算是懂了编程,那么什么是类呢?类是一个抽象的概念,我们把相同特征和行为的东西抽取出来就一个类,比如人类,鸟类,哺乳类都可以成为一个类,我们把类的特征称为属性,行为称为方法或者函数,我们可以通过类来创建对象,有了对象我们就可以调用类中的方法来完成相应的功能了,比如说Ikun是一个类,它的方法有唱、跳、rap和打篮球,那么我就可以通过Ikun类创建一个ikun对象,然后调用它的唱跳rap和打篮球的方法来完成《鸡你太美》这首歌,这就是面向对象编程,我们编写的程序都是通过对象来操作完成。
说了这么多不如一个示例更加直观
class Ikun():
def sing(self):
print('唱')
print(self)
ikun = Ikun()
print(ikun)
ikun.sing()
这里我们定义了一个Ikun类,对于类名的定义,一般都是第一个字母大小,sing()方法是类中的方法,第二段是创建了ikun对象,专业术语就是实例化对象,然后通过ikun对象调用sing()方法,然后代码就输出了内容:唱。
Python类中的self
这里有个self,self有什么用的,self指的是调用这个方法的对象,这里输出ikun对象和方法中输出self对象一样,因为调用函数的方法就是ikun这个对象,他们输出的内容是当前对象在内存中的存储地址。
对象的属性
对于属性,可以在类外定义属性,也可以在类内定义属性,在类之外我们使用对象.属性名的形式,比如ikun.hair='middle',在类之内的话一般使用self,比如self.hair='middle',意思是ikun的头发是居中的。
总结
行文至此,这篇文章我们主要将了Python的类和对象的内容,简单介绍了一下什么是面向对象编程,并介绍了Python的类是怎么定义的和它的关键词self的使用,self和Java中的this指针有异曲同工之妙,代表这个对象的内容地址,Python的属性和Java有所不同,Java的对象属性必须在类中定义,而Python既可以在类内也可以在类外定义。