python中没有接口类,有抽象类,abc模块中的metaclass = ABCMeta,@abstructmethod
本质是做代码规范,希望在子类中实现和父类方法名字完全一样的方法
在java的角度上看 是有区别的:
java本来就支持单继承 所以就有抽象类
java没有多继承,所以为了接口隔离原则,设计了接口这个概念,支持多继承
python及支持单继承也支持多继承,所以对于接口类和抽象类的区别就不那么明显了,甚至在python中没有内置接口类
封装-------私有化
在python中只要__名字,就把这个名字私有化了
私有化之后 就不能从类的外部直接调用了
静置属性 方法 对象属性 都可以私有化
这种私有化只是从代码级别做了变形,并没有真的约束
变形机制__类名__名字 在类外用这个调用,在类的内部直接__名字调用
原文:https://www.cnblogs.com/gongqidebokeyuan/p/12441306.html