1.カプセル化、継承やポリモーフィズム
- データ構造のセットと、そのオブジェクトを処理するための方法は、同じクラスの動作の目的は、ダイナミックのオブジェクト・タイプに基づいて、多型の特化した実装クラスがクラスカプセル化、継承、および一般の内部の詳細を隠すことによって、要約します割り当て
- 我々は、オブジェクトを作成した後、単にオブジェクトを与えるために、メッセージ(メソッドを呼び出す)は、コードメソッドを実行、我々は唯一の方法の名前、着信のパラメータ(外部ビュー方式)を知っている必要があることをその手段とすることはできません送信します私たちは、この方法の内部実装の詳細(メソッドの内部ビューを)知っている必要があります
オブジェクト指向プログラミングの2 A良い例
from time import sleep
class Clock(object):
"""数字时钟"""
def __init__(self, hour=0, minute=0, second=0):
"""初始化方法
:param hour: 时
:param minute: 分
:param second: 秒
"""
self._hour = hour
self._minute = minute
self._second = second
def run(self):
"""走字"""
self._second += 1
if self._second == 60:
self._second = 0
self._minute += 1
if self._minute == 60:
self._minute = 0
self._hour += 1
if self._hour == 24:
self._hour = 0
def show(self):
"""显示时间"""
return '%02d:%02d:%02d' % \
(self._hour, self._minute, self._second)
def main():
clock = Clock(23, 59, 58)
while True:
print(clock.show())
sleep(1)
clock.run()
if __name__ == '__main__':
main()