開発環境
- OS X Lion - Apple(OS)
- BBEdit - Bare Bones Software, Inc., Emacs(Text Editor)
- プログラミング言語: Python
『初めての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 コメント:
コメントを投稿