本篇内容主要讲解“python面向对象编程常用名词有哪些”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“python面向对象编程常用名词有哪些”吧!
面向对象编程的核心是对象,即某一可有属性、动作的复杂事物。面向对象编程优先考虑对象和需要达到的结果,不重点关注流程。
面向对象编程的优点是程序的可维护高和扩展性强,采用面向对象编程可以大幅提高团队开发效率,在需求变化快的场景面向对象编程应对需求变化更容易和方便。
面向对象编程的缺点是可控性差,无法精准预测问题的处理流程和结果。
类:具有某些类似特征的一类事物(如动物、植物等),类是模板,是抽象概念。
对象(实例):具体的某一事物(如那只流浪猫、这只宠物狗),对象是具体的事物,是抽象概念的具现。
实例化:根据类创建具体对象的过程。
class 类名(父类):'''说明文档'''类体
其中(父类)可缺省,缺省父类是object,可以把object理解为类的祖先。
class语句下一行三引号开头和三引号结束中的内容为类的说明文档。
说明文档下一行即为类的正式内容,即类体。
类体中主要内容有2种,一是属性、二是函数。
例如:
class Animal:kind = 'all animals'def eat(self):print('The animal is eating!')print(Animal.kind)Animal.eat(Animal)out:all animals The animal is eating!
以上案例中kind是属性,eat是函数。
注意eat比较特殊,如果用类名.eat调用时它是函数,用对象.eat调用时它是方法。
类名加括号就是实例化,会自动触发__init__函数的运行,它会根据参数为每个实例定制自己的特征。
white_cat = Animal()print(white_cat.kind)white_cat.eat()out:all animals The animal is eating!
注意:实例化时会找该类的__init__函数,若该类无此函数,那么会找它父类的__init__函数,父类若没有会继续向上找祖父类__init__函数,直至找到object类中的空__init__函数。
学python时经常会有人搞不清楚函数和方法的区别。在此通过案例来搞清楚它们的区别。
from types import FunctionType, MethodTypeclass Animal:kind = 'all animals'def eat(self):print('The animal is eating!')white_cat = Animal()print(isinstance(Animal.eat, FunctionType)) # 判断Animal.eat是不是函数print(isinstance(white_cat.eat, FunctionType)) # 判断white_cat.eat是不是函数print(isinstance(Animal.eat, MethodType)) # 判断Animal.eat是不是方法print(isinstance(white_cat.eat, MethodType)) # 判断white_cat.eat是不是方法out:TrueFalseFalseTrue
通过以上案例得出结论:
类.变量名()调用时,该变量名是函数。
变量名()调用时,该变量名是函数。
实例.变量名()调用时,该变量名是方法。
到此,相信大家对“python面向对象编程常用名词有哪些”有了更深的了解,不妨来实际操作一番吧!这里是亿速云网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。