英語名テンプレートテンプレートは、このモードでは、例えば、以下の(抽象)AbstractClassとConcreteClass(具象クラス)、で主要な役割があります。
文字または文字列のサイクル5回の表示部と、
まず、抽象クラス、抽象クラスの定義、表示方法は、サブクラスdiaplayメソッドを呼び出すことにより、テンプレートで次のように、それは、実行されるサブクラスで定義された特定のメソッドを固定する方法に従って実行します。
1つの パッケージt2020010602。 2 3 パブリック 抽象 クラスAbstractDisplay { 4 パブリック 抽象 ボイドオープン(); 5 6 公共の 抽象 無効印刷(); 7 8 公共の 抽象 無効近いです(); 9 10 パブリック 最終 ボイドディスプレイ(){ 11 オープン(); 12 のために(INT I 0 =; I <5は、I ++ ){ 13 プリント(); 14 } 15 近いです(); 16 } 17 }
次いで、特定のメソッドのサブクラスを定義します
1つの パッケージt2020010602。 2 3 パブリック クラス CharDisplayは延びAbstractDisplay { 4 プライベート チャーCHと、 5 6 公共 CharDisplay(チャーCH){ 7 この .CH = CH。 8 } 9 10 @Override 11 公共 ボイドオープン(){ 12 System.out.print( "<<" )。 13 } 14 15 @Override 16 公共 ボイドプリント(){ 17 System.out.print(CH)。 18 } 19 20 @Override 21 公共 ボイド近い(){ 22 のSystem.out.println( ">>" )。 23 } 24 25 }
1つの パッケージt2020010602。 2 3 パブリック クラス StringDisplayは延びAbstractDisplay { 4 プライベート文字列を、 5 6 プライベート int型の長さ。 7 8 公共StringDisplay(文字列){ 9 この .string = ストリング。 10 長さ= 。するString.getBytes()長さ; 11 } 12 13 @Override 14 公共 ボイドオープン(){ 15 プリントライン()。 16 } 17 18 @Override 19 公共 ボイドプリント(){ 20 のSystem.out.println( "+" +文字列+ "+" )。 21 } 22 23 @Override 24 公共 ボイド近い(){ 25 プリントライン()。 26 } 27 28 公共 ボイドプリントライン(){ 29 System.out.print( "+" )。 30 のために(INT iは= 0; I <長さ、iは++ ){ 31 System.out.print( " - " )。 32 } 33 のSystem.out.println( "+" )。 34 } 35 36 }
プログラムのエントリとして
1つの パッケージt2020010602。 2 3 パブリック クラスメイン{ 4 5 パブリック 静的 ボイドメイン(文字列[]引数){ 6 AbstractDisplay D1 = 新しい CharDisplay( 'H' )。 7 AbstractDisplay D2 = 新 StringDisplay( "こんにちは、世界;" ); 8 d1.display()。 9 d2.display()。 10 } 11 12 }
あなたが見ることができ、D1、D2は同じメソッドを呼び出しますが、異なるアプローチ本体を行い、これはテンプレートプログラムです。