预约成功
引入: 谈python面向对象,必然会引入面向过程,而python面向对象的基本单位是函数,python面向对象的基本单位就是类。
1、问题:Python中的类是什么?
答: 类,是一群有着相同属性和函数的对象的集合。
2、问题: __ init __函数的作用?
答:在对象生成的时候,自动调用__ init __函数,构造当前对象的属性。init表示构造函数,不知道你还记得初始化git仓库不~
3、问题:如何在一个类中定义一些常量,每个对象都可以方便访问这些常量而不用重新构造?
答:可以直接书写类的属性,可以供类自己调用,每一个实例化对象调用。
4、问题:如果一个函数不涉及到访问修改这个类的属性,而放到类外面有点不恰当,怎么做才能更优雅呢?
答: 使用类的封装性,使用双下划线,表示为类的私有属性,只能内部调用。其实外部也可以调用,只是需要变一种格式,_类名__属性名。
针对于方法,可以使用装饰器添加给类的@classmethod,也可以属于静态函数,相当于普通函数,使用装饰器加上@staticmethod。
5、问题:既然类是一群相似的对象的集合,那么可不可以是一群相似的类的集合呢?
答:可以,使用类的继承特性,子类可以继承父类。继承关系使用mro表存储。
注意:继承的查找顺序,一定是自己对象有的,就在对象找,找不到去类找,再找不到按照mro继承表顺序查找。
6、问题:继承的super()使用场景?
答:super可以重用父类的方法和属性,是的代码重用。
7、问题:抽象类有什么用途?
答:抽象类,from abc import ABCMeta, abstractmethod
抽象类可以定义接口,要求继承者必须实现当前接口,不然就会报错。
大型工程往往需要很多人合作开发,在 idea 提出之后,开发组和产品组首先会召开产品设计会,PM(Product Manager,产品经理) 写出产品需求文档,然后迭代;TL(Team Leader,项目经理)编写开发文档,开发文档中会定义不同模块的大致功能和接口、每个模块之间如何协作、单元测试和集成测试、线上灰度测试、监测和日志等等一系列开发流程。
8、问题:什么是python面向对象编程?
答:面向对象编程是软件工程中重要的思想。正如动态规划是算法中的重要思想一样,它不是某一种非常具体的技术,而是一种综合能力的体现,是将大型工程解耦化、模块化的重要方法。在实践中要多想,尤其是抽象地想,才能更快掌握这个技巧。
以上就是今天的全部内容了,如果面试的时候有人问你“谈谈python面向对象a?”这个问题,小编相信大家应该不会再慌了,如果对于对于实践方面有疑问的同学,可以关注环球网校的其他python内容!环球网校的小编在这里祝大家python相关工作面试顺利。