01.パッケージ
- パッケージングは、 オブジェクト指向プログラミングの大きな特徴であります
- オブジェクト指向プログラミング の最初のステップ - 属性 および メソッド パッケージ化 抽象に クラス で
- 外の世界 使用して クラスを 作成するには 、オブジェクトを、その後、 オブジェクトはメソッドを呼び出してみましょう
- オブジェクトのメソッドの詳細は されている カプセル化 して 、クラスの内部
02.暁明の愛のランニング
需要
- 暁明の 重量
75.0
キログラム - 暁明各 ランナーは 体重失うことになる
0.5
キロを - 暁明各 食べて 体重増加
1
キロ
注:で -ハウスメソッドオブジェクト、それができる 、直接オブジェクトのプロパティにアクセスする には!
クラスパーソン: DEF __init__ (セルフ、名前、体重): self.name = 名前 self.weight = 重量 DEF RUN(セルフ): self.weight - = 5 印刷(" エクササイズジョギング%Sの愛のジョギング、"%の自己を。名) DEF (自己を)食べる: self.weight + 1 = 印刷(" %sは、食料品で、この食事を食べた後、重量を失う"%のself.name)をDEF __str__ (セルフ): リターン" 私の名前は%sの%体重であります.2fキロ"% (self.name、self.weight) 暁 =人物(' 小明'、75 ) xiaoming.eat() xiaoming.eat() xiaoming.eat() プリント(暁)
小さな拡張を実行している2.1カリタス - リトルアメリカが動作して愛して
需要
- 暁明 と 小さな美容 愛のランニング
- 暁明の 重量
75.0
キログラム - リトルアメリカ 重量
45.0
キログラム - すべての 実行が 削減されます
0.5
キロを - たびに 食べることが 増加します
1
キロを
プロンプト
- では 、オブジェクトのメソッドの内部、あなたがすることができ 、直接オブジェクトのプロパティにアクセスする には
- 同じクラス を作成するために 複数のオブジェクト 間のプロパティを お互いを乱すことなく!
クラスパーソン: DEF __init__ (セルフ、名前、体重): # 。セルフ属性=パラメータ self.name = 名 self.weight = 重量 DEFの __str__ (自己): 戻り値は、 「私の名前は%sの%.2f kg体重であります"%(self.name、self.weight) DEF RUN(セルフ): 印刷(" %Sの愛のジョギング、エクササイズジョギング"%のself.name) self.weight - = 0.5は、DEF EAT(セルフ): 印刷(" % sが、この食事を食べて、食料品で、その後、重量を失う"%の)self.nameを self.weight + = 1つの 暁 =人(" 小の明"、75.0 ) xiaoming.run() xiaoming.eat() プリント(暁) #小美爱跑步 暁=人物(" 小美"、45 ) xiaomei.eat( ) xiaomei.run() プリント(暁) プリント(暁)
03.ディスプレイの家具
需要
- ハウス(ハウス) 持っ 台、総面積 や 家具名リスト
- 新しい家には家具がありません
- 家具(HouseItem) 持って 名前を し、 エリアカバーどこに
- シモンズ(ベッド) の面積カバー
4
平方メートル - ワードローブ(胸) 面積
2
平方メートル - 表(テーブル) 面積
1.5
㎡
- シモンズ(ベッド) の面積カバー
- 上記の3つの 家具 を追加 し 、家 で
- 家を印刷し、必要な出力:アパート、総面積、残りの領域、家具名リスト
残りの領域
- 作成時に家屋オブジェクトが定義されている 残りの領域の特性を、初期値は、全面積に等しく、そして
- お問い合わせの際
add_item
部屋に方法を、 家具を追加するために 、聞かせて 残りの領域を = - 家具のエリア
リフレクション:最初のクラスを開発する必要がありますか?
答えは - 家具
- シンプルな家具
- 、家具の家を使用するには、クラスで使用されるように、一般的に最初に開発すべきです
3.1家具を作成します
クラスHouseItem: DEF __init__ (セルフ、名前、エリア): "" " :PARAM名:家具名前 :PARAMエリア:エリア " "" self.name = 名前 self.area = エリア DEFの __str__ (セルフ): リターン " 【%のS] .2f面積%"%(self.name、self.area) #1を作成家具 ベッドHouseItem =(" シモンズ"4 ) 胸部 = HouseItem(" クローゼット」、2 ) 表 = HouseItem(" 餐桌"、1.5 ) プリント(床) プリント(胸) 、印刷(表)
概要
- 作成された 家具を使用し、
__init__
そして__str__
2つの組み込み方法 - 使用する 家具を 作成するために、 3つの家具のオブジェクト、および 出力情報の家具を
3.2部屋を作成します
クラスハウス: DEF __init__ (セルフ、house_type、エリア): "" " :のparam house_type:単位 :PARAM面積:総面積 " "" self.house_type = house_type self.area = エリア #残りの領域とデフォルトと一致し、総面積 の自己。 = free_area 領域 #の任意の家具なしのデフォルト self.item_list = [] DEF __str__ (セルフ): #Pythonコードが接続され、内側一対のブラケット自動的であってもよい リターン(" %sの\ nは総面積:%単位。 。2Fは[残り:%の2F]を\ nは家具:%S " %(self.house_type、self.area、 self.free_area、self.item_list)) DEF ADD_ITEM(セルフ、アイテム): 印刷(" S%を追加するには、"%の項目を) ... #2。家のオブジェクトを作成します my_home =ハウス(" ベッドルーム"、60 ) my_home.add_item(ベッド) my_home.add_item(胸) my_home.add_item(表) を印刷(my_home)
概要
- 作成 家のクラスを使用するために、
__init__
そして__str__
2つの組み込み方法 - 準備
add_item
の方法は、 家具を追加する準備ができ - 使用 家のクラスが 作成された 家のオブジェクトを
- ましょう 、家オブジェクト 3倍と呼ばれる
add_item
方法で、 3つの家具 に渡された引数のadd_item
内部を
3.3家具を追加します
需要
- 1> 分析 家具面積を かどうか、 残りの領域を超え、超過した場合に、家具の一部を追加するように指示することはできません
- 2> 家具の名前が に追加 名前の家具リスト の
- 3>との 家の残りの領域 - 家具エリア
DEF :(セルフ、項目)ADD_ITEM 印刷(「%sの追加するには、」%の項目) #1。家具は残りの領域よりも大きい面積かどうかを決定する のIF item.area> self.free_area: 印刷(「面積%sは大きすぎるし、追加することはできません収容するために"%の)item.nameを 返す #2家具の名前が名前リストに追加され self.item_list.appendを(item.nameが) #3.残りの領域の計算 self.free_areaを- = item.area
3.4まとめ
- メインプログラムは、作成するための唯一の責任がある 家の オブジェクトや 家具の オブジェクトを
- ましょう 家 オブジェクトの呼び出し
add_item
方法は、 家の家具に追加されますで - 面積計算、残りの領域、家具の一覧 およびその他の処理がされている カプセル化 に 家クラスの内部