2013年4月4日木曜日

開発環境

『初めてのPython 第3版』(Mark Lutz 著、夏目 大 訳、オライリー・ジャパン、2009年、ISBN978-4-87311-393-7) のVI部(クラスとクラスとオブジェクト指向プログラミング)の25章(クラスと設計)の練習問題3、4を解いてみる。

その他参考書籍

3、4.

コード(BBEdit)

sample.py

#!/usr/bin/env python3.3
#-*- coding: utf-8 -*-

# コンポジションとは、あるクラスのメソッドの中で
# 他のクラスのインスタンスを作成するようにすること
class A:
    def f(self):
        print("Hello, f(class A)!")
class B:
    def __init__(self):
        self.a = A() # 他のオブジェクトを組み込む
    def f(self):
        print("Hello, f(class B)!")
        self.a.f()

b = B()
# 結合メソッド
b.f()
# 非結合メソッド 明示的に第1引数にインスタンスを渡す必要がある
B.f(b)

入出力結果(Terminal)

$ ./sample.py
Hello, f(class B)!
Hello, f(class A)!
Hello, f(class B)!
Hello, f(class A)!
$

0 コメント:

コメントを投稿