Python學習筆記--面向對象

實現一個簡單的功能,有一個Human基類,包含一個變量名字(_name)以及一個打印名字的方法(PrintName)。而後有一個Student子類,多一個變量分數(_grade),有一個獲取分數的公共方法,每次獲取分數後再調用一個重置分數的私有方法,而且重寫了父類打印名字的方法。code

class Human:
    _name = ""

    def __init__(self, _name):
        self._name = _name

    def PrintName(self):
        print("PrintName")


class Student(Human):
    _grade = 0

    def __init__(self, _grade, _name):
        self._grade = _grade
        self._name = _name

    def PrintName(self):
        super().PrintName()  #繼承父類方法,若是不須要能夠不寫
        print("學生名:" + self._name)

    def PrintGrade(self):
        print("成績:" + str(self._grade))
        self.__ResetGrade()

    def __ResetGrade(self):
        self._grade = 0
        print("重置後成績:" + str(self._grade))


april = Student(90, "April")
april.PrintName()
april.PrintGrade()

輸出結果爲:繼承

PrintName
學生名:April
成績:90
重置後成績:0

注意:一個下劃線(_)的變量或方法至關於protected,兩個下劃線(__)的變量或方法至關於private,什麼都不加的表示public。it

相關文章
相關標籤/搜索