Javaの自己 - インタフェースとインタフェースの継承

Javaインタフェースの設計

LOL設計時間、攻撃的英雄のカテゴリでは、2つがあり、一つは一つの方法は、魔法のシステムを攻撃することで、物理学部門が攻撃を行っています

この時点では、使用することができますインターフェイスをこの効果を達成します。

インタフェースは慣例のようなものです、我々は学部物理学の英雄のいくつかに同意した後、彼らは物理的な攻撃を行うことができるようになる、ヒーローです。

ステップ1:物理攻撃インターフェイス

インタフェースファイル- >新規作成- >インタフェースの作成
、ADの方法physicAttack物理的な攻撃を宣言したが、何のメソッド本体が存在しない、それは「」のアプローチは、

物理攻撃インターフェイス

package charactor;
 
public interface AD {
        //物理伤害
    public void physicAttack();
}

ステップ2:ヒーローのクラスは、物理的な攻撃を使用することができます

ヒーローのクラスの設計は、物理的な攻撃は、そのようなLOLの英雄と呼ばれるAD、使用することができる
ADHeroは:クラスは
ヒーロークラス、継承された名前、HP、鎧やその他のプロパティを継承します

インタフェース、コミットメント契約のいくつかの種類の同等の実装

だから、達成するために ADにこのインタフェースを、あなたがしなければならないインタフェースで宣言されたAD方法を提供physicAttack()
を実装文法上のキーワードの使用を実装します

package charactor;
 
public class ADHero extends Hero implements AD{
 
    @Override
    public void physicAttack() {
        System.out.println("进行物理攻击");
    }
 
}

ステップ3:魔法攻撃インターフェイス

ファイル- >新規作成- >インターフェイスのインターフェイスを作成し
、APの方法magicAttack魔法攻撃を宣言したが、何のメソッド本体が存在しない、それは「空」のアプローチです

package charactor;
 
public interface AP {
 
    public void magicAttack();
}

ステップ4:あなたが唯一の魔法攻撃を使用することができ、クラスのヒーローをデザイン

・クラス・ヒーローズのためのデザイン、唯一の魔法攻撃を使用することができますが、これらの英雄は、APの中でLOLで呼び出され
たクラス:APHeroは
、ヒーローのクラスを継承した名前、HP、鎧やその他の財産を継承し
、達成しながらAPにこのインタフェースを、あなたがしなければならない APを提供しますインターフェースメソッド宣言magicAttackを()

package charactor;
 
public class APHero extends Hero implements AP{
 
    @Override
    public void magicAttack() {
        System.out.println("进行魔法攻击");
    }
 
}

ステップ5:魔法攻撃をすることができ、物理的な攻撃だけでなく、クラスのヒーローをデザイン

同時に、物理攻撃と魔法攻撃が可能な、英雄
、そのよう伊沢リエル紙シティ警官ケイトリン

package charactor;
  
//同时能进行物理和魔法伤害的英雄
public class ADAPHero extends Hero implements AD,AP{
  
    @Override
    public void magicAttack() {
        System.out.println("进行魔法攻击");
    }
  
    @Override
    public void physicAttack() {
        System.out.println("进行物理攻击");
    }
  
}

運動インタフェース

(設計治療インタフェース:ヒーラー

)(治癒:インタフェースは、メソッドの宣言を有します

サポートは、サポートの英雄、継承ヒーロークラスを表すクラスを設計し、このインタフェースをヒーラーを達成しながら)

答え

public interface Healer {
    public void heal(); //加血
}

public class Support extends Hero implements Healer{
 
    @Override
    public void heal() {
        System.out.println(name+" 加了一口血");
    }
 
}

おすすめ

転載: www.cnblogs.com/jeddzd/p/11489671.html