python3 开发面试题(面向对象)6.6

Posted manyqian

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python3 开发面试题(面向对象)6.6相关的知识,希望对你有一定的参考价值。

"""
封装、继承、多态

1. 谈谈你对面向对象的理解?
2. Python面向对象中的继承有什么特点?
3. 面向对象深度优先和广度优先是什么?
4. 面向对象中super的作用?
5. 列举面向对象中特殊成员(带双下划线的特殊方法,如:__new__、__init__、__call__等)
6. 静态方法和类方法区别?
"""
技术分享图片
红藕香残玉簟秋。轻解罗裳,独上兰舟。云中谁寄锦书来,雁字回时,月满西楼。
花自飘零水自流。一种相思,两处闲愁。此情无计可消除,才下眉头,却上心头
古词一首
#谈谈你对面向对象的理解?
#面向对象,首先我们要理解对象,什么是对象?对象是特征与技能的结合体。特征即变量,技能即函数,对象就是变量和函数的结合体,在python中既有面向对象编程,
也有面向过程编程,在所做项目中需要用到哪种更加便捷就用那种编程方式,学面向对象的人,正常最常听到的一句话就是“万物皆对象”,我们编程就是将现实中的事物,
抽象成程序中的对象,用特征和技能去表现出对象。
# Python面向对象中的继承有什么特点? # 减少代码重用,可以多继承,缺点就是把子类与父类强耦合到一起 # 面向对象深度优先和广度优先是什么? #深度优先主要体现在经典类在菱形继承的背景下,查找属性的方式 #广度优先主要体现在新式类在菱形继承的背景下,查找属性的方式, 经典类只在python2中,由于的python2不支持服务的倒计时,推荐用python3,python3中的所有类都是新式类。 # 面向对象中super的作用? super在子类派生出新的方法中重用父类的功能 注意:super()的返回值是一个特殊的随想,该对象专用用来调用父类的属性 class Person(object): def __init__(self, name, age): self.name = name self.age = age def __repr__(self): return "呵呵" class Male(Person): def __init__(self, name, age): super().__init__(name, age) # 列举面向对象中特殊成员(带双下划线的特殊方法,如:__new__、__init__、__call__等) # __new__ 可以调用其他类的构造方法或者直接返回别的对象来作为本类的实例。 # __init__ 负责将类的实例化 # __call__ 对象后面加括号,触发执行 # __str__ print打印一个对象时 __unicode__ # __repr__ 和__str__ # __doc__ 类的注释,改属性是无法继承的 # __getattr__ 在使用调用属性(方式.属性)不存在的时候触发 # __setattr__ 添加/修改属性会触发它的执行 #__delattr__ 删除属性的时候会触发 # __delete__ 采用del删除属性时,触发 # 静态方法和类方法区别? # 1. 静态方法: 相当于普通函数 staticmethod # 2. 类方法: 通过类调用,第一个参数默认是类本身 classmethod

以上是关于python3 开发面试题(面向对象)6.6的主要内容,如果未能解决你的问题,请参考以下文章

经典Java面试题及答案解析

115个Java面试题和答案

经典Java面试题汇总及答案解析

100+经典Java面试题及答案解析

100+经典Java面试题及答案解析

java面试题1