Python类与对象---封装与继承

巧了我就是萌 提交于 2020-01-27 11:53:12
#一.Python类的封装机制:
# Python 并没有提供 public、private 这些修饰符。为了实现类的封装,Python 采取了下面的方法:
# 1.默认情况下,Python 类中的变量和方法都是公有(public)的,它们的名称前都没有下划线(_);
# 2.如果类中的变量和函数,其名称以双下划线“__”开头,则该变量(函数)为私有变量(私有函数),其属性等同于 private。

#二、Python类的继承机制:
# 1.如果类没有显式指定继承自哪个类,则默认继承 object 类
# 2.(object 类是 Python 中所有类的父类,即要么是直接父类,要么是间接父类)。
# 3.另外,Python 的继承是多继承机制(和 C++ 一样),即一个子类可以同时拥有多个直接父类。
# 4.继承是相对子类来说的,即子类继承自父类;而派生是相对于父类来说的,即父类派生出子类。
# 5.Python 支持多继承(C++也支持多继承)。
# 6.和单继承相比,多继承容易让代码逻辑复杂、思路混乱,一直备受争议,中小型项目中较少使用,后来的 Java、C#、PHP 等干脆取消了多继承。
# 7.根据子类继承多个父类时这些父类的前后次序决定,即排在前面父类中的类方法会覆盖排在后面父类中的同名类方法。
# 8.虽然 Python 在语法上支持多继承,但逼不得已,建议大家不要使用多继承。

class Shape:
    def print_shape(self,content):
        print("hello,this is a parent class!",content)
class Circle(Shape):
    def print_cricle(self,content):
        print("hello, this is a child class!",content)

S=Shape()
S.print_shape("Li Xiaomin")
C=Circle()
C.print_shape("Lu Li")
C.print_cricle('Chen Xuefeng')

 

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!