継承で多重コードとdefaultの継承範囲を組み合わせる


</pre><p></p><p>           </p>  1:  <p><span style="font-size:18px">  :           ,           has a        </span></p><p><span style="font-size:18px">        :</span></p><p><span style="font-size:18px">(1)  :     </span></p><p><span style="font-size:18px">(2)  </span></p><p><span style="font-size:18px">(3)  </span></p><p><span style="font-size:18px">(4)  </span></p><p></p><p style="font-size:18px"><span style="font-size:18px">  : A   B   </span></p><p style="font-size:18px"></p><p style="font-size:18px">class A{</p><p style="font-size:18px"><span style="white-space:pre"></span>private B b=new B();</p><p style="font-size:18px">}</p><p style="font-size:18px"></p><p><span style="font-size:18px">    :</span></p>      Dao                     <span style="font-size:18px"></span><pre name="code" class="java">public class Dao {
	
	public int daoSize=1;
	public void kan(){
		System.out.println("   ");
		System.out.println("   ");
	}

}

もう1つの種類は戦士と呼ばれています.ナイフを持っています.彼は戦うことができます.ナイフの大きさを変えることができます.
<span style="font-size:18px;">public class ZhanShi {
	
	private Dao dao=new Dao();
	
	public void Zhandou(){
		dao.daoSize=3;
		dao.kan();
	}

}</span>

ナイフを局所変数として定義すると依存は組合せではありません
方式2:継承
正確な翻訳を拡張
サンプルコード
Person類を書いて、中には2つの方法があります.誰もが食事をして、寝ます.
public class Person {

	public void eat(){
		System.out.println("    ");
	}
	
	public void sleep(){
		System.out.println("  ");
	}
	
}
Student類をもう一つ書きます.Studentも人です.彼も食事をして寝ているので、Personの方法を受け継ぎます.
public class Student extends Person{

	public void study(){
		System.out.println("    ");
	}
	
	public static void main(String[] args) {
		Student s = new Student();
		
		s.eat();//  Student     eat             
	}
}

Person親ベースクラス
Studioサブクラス派生クラス派生クラス
注意:protectedとpublicは継承できます.
privateは継承できません
defaultは比較的特殊で、defaultは本パッケージ内でしか継承できない、パケット間で継承できない、defaultは継承できないという観点が間違っている
コードの例: