図1は、以下の要件との完全な知識ベースのインタフェースを使用して:
(1)インターフェイスCanFlyを定義し、メソッド)がフライ(公共ボイドフライ記載;
(2)クラスの航空機と鳥を定義し、CanFlyインターフェイスを実装します。
(3)テストクラス、テスト航空機や鳥を定義します。テストクラスmakeFly()メソッドを定義して、物事がフライを飛ぶことができます。
(4)航空機のオブジェクトを、その後、メインメソッドで鳥のオブジェクトを作成し、メインメソッドでmakeFly()メソッドを呼び出して、飛行機が離陸および鳥類ましょう。
CanFly.java パッケージに違約金com.fs.test; //はフライングものを表す パブリック インターフェースCanFly { パブリック 抽象 ボイドが(フライ); } Plane.java 用パッケージ変更com.fs.test; // 飛行機 //は物事が飛ぶ実現しました能力 パブリック クラス平面実装がCanFly { 公共 ボイドは飛ぶ(){ System.out.printlnは(「私は飛行機だ、私は飛ぶことができます」); } } Bird.java のためのパッケージ変更com.fs.test; // 鳥 パブリック クラス鳥実装{CanFly 公共 ボイドフライ(){ // 自動生成方法 のSystem.out.println(「私は、私は飛ぶことができる鳥午前」); } } Test.java パッケージcom.fs.test、 パブリック クラスのテスト{ 公共 静的 ボイドメイン(文字列[]引数){ // 航空機のインスタンス 平面P = 新しい新しい面を(); 新しい新しいテスト()makeFly(P);. // インスタンス化鳥 バードB = 新しい新しい鳥を(); 新しい新しい。テスト()makeFly (B); } // 物事が飛んで飛ぶことができ 、公開を 空makeFly(P-CanFly){ p.fly(); }
結果: 私は飛行機を午前、私は飛ぶことができる 私の鳥を、私は飛ぶことができます