Javaの継承とは何ですか?継承の実装方法

青灯夜游
リリース: 2018-11-26 18:02:49
オリジナル
13395 人が閲覧しました

この記事では、Java の継承とは何かについて説明します。継承を実装する方法。困っている友人は参考にしていただければ幸いです。

Java の継承とは何ですか?

Java の継承は、オブジェクトがその親オブジェクトのすべてのプロパティと動作を取得するメカニズムです。これはオブジェクト指向プログラミング システム (OOP) の重要な部分です。

Java における継承の考え方は、既存のクラスに基づいて新しいクラスを作成することです。既存のクラスから継承すると、親クラスのメソッドとフィールドを再利用できます。さらに、新しいメソッドとフィールドを現在のクラスに追加できます。 [関連ビデオチュートリアルの推奨事項: JavaTutorial]

継承は、親子関係とも呼ばれる IS-A 関係を表します。

継承で使用される用語

1. クラス: クラスは、共通の属性を持つオブジェクトのグループです。これは、オブジェクトを作成するためのテンプレートまたは設計図です。

2. サブクラス: サブクラスは、他のクラスを継承するクラスです。派生クラス、拡張クラス、サブクラスとも呼ばれます。

3. スーパー クラス/親クラス: スーパー クラスは、サブクラスが関数を継承するクラスです。基本クラスまたは親クラスとも呼ばれます。

4. 再利用性: 名前が示すとおり、再利用性は、新しいクラスを作成するときに既存のクラスのフィールドとメソッドを再利用するのに役立つメカニズムです。前のレッスンで定義したものと同じフィールドとメソッドを使用できます。

Java で継承を使用する理由

1. メソッドの書き換えが可能です (これにより、実行時のポリモーフィズムが実現できます)。

2. 継承によりコードを再利用できるため、Java アプリケーションの再利用性が向上します。

#Java 継承の実装

Java 継承の基本構文

Java 継承を継承するにはclass では、extends キーワードを使用します。ここでのクラス XYZ はサブクラス、クラス ABC は親クラスです。クラス XYZ は、クラス ABC のプロパティとメソッドを継承します。

class Subclass-name extends Superclass-name  
{  
   //方法和字段  
}
ログイン後にコピー

extends キーワードは、既存のクラスから派生した新しいクラスを作成していることを示します。 「拡張」の意味は機能を増やすことです。

Java 用語では、継承されたクラスは親クラスまたはスーパークラスと呼ばれ、新しいクラスはサブクラスと呼ばれます。

継承例:

次の継承例では、クラス Bicycle は基本クラス、クラス MountainBike は Bicycle クラスを拡張する派生クラス、クラス Testプログラムを実行するドライバークラスです。

//用java程序来说明
// 继承的概念
  
// 基类
class Bicycle  
{ 
    // Bicycle类有两个字段
    public int gear; 
    public int speed; 
          
    // Bicycle类有一个构造函数
    public Bicycle(int gear, int speed) 
    { 
        this.gear = gear; 
        this.speed = speed; 
    } 
          
    // Bicycle类 有三种方法
    public void applyBrake(int decrement) 
    { 
        speed -= decrement; 
    } 
          
    public void speedUp(int increment) 
    { 
        speed += increment; 
    } 
      
    // toString()方法来输出 Bicycle类信息
    public String toString()  
    { 
        return("没有的齿轮个数是 "+gear 
                +"\n"
                + "自行车的速度是"+speed); 
    }  
} 
  
// 派生类
class MountainBike extends Bicycle  
{ 
      
    // MountainBike子类增加一个字段
    public int seatHeight; 
  
    // MountainBike子类  有一种构造函数
    public MountainBike(int gear,int speed, 
                        int startHeight) 
    { 
        // 调用基类(Bicycle类)构造函数
        super(gear, speed); 
        seatHeight = startHeight; 
    }  
          
    // MountainBike子类增加一个方法
    public void setHeight(int newValue) 
    { 
        seatHeight = newValue; 
    }  
      
    // 重写toString()方法
    // 输出跟多Bicycle类信息 
    @Override
    public String toString() 
    { 
        return (super.toString()+ 
                "\n 座位高度为 "+seatHeight); 
    } 
      
} 
  
// 驱动程序类
public class Test  
{ 
    public static void main(String args[])  
    { 
          
        MountainBike mb = new MountainBike(3, 100, 25); 
        System.out.println(mb.toString()); 
              
    } 
}
ログイン後にコピー

出力:

Javaの継承とは何ですか?継承の実装方法

Java の継承型

クラス内 基本的にJava では、単一、マルチレベル、階層の 3 つのタイプの継承が存在します。

1. 単一継承では、サブクラスはスーパークラスの特性を継承します。以下の図では、クラス A はクラス B の派生元となる基本クラスとして機能します。

Javaの継承とは何ですか?継承の実装方法

2. マルチレベル継承では、派生クラスは基本クラスを継承し、派生クラスも機能します。他のクラスの基本クラスとして。以下の図では、クラス A が派生クラス B の基本クラスとして使用され、さらに派生クラス B が派生クラス C の基本クラスとして使用されます。 Java では、クラスはその祖父母のメンバーに直接アクセスできません。

Javaの継承とは何ですか?継承の実装方法

3. 階層継承

: 階層継承では、クラスは複数のサブクラスのスーパークラス (基本クラス) として機能します。以下の図では、クラス A が基本クラスとして機能し、そこからクラス B、C、D が派生します。

Javaの継承とは何ですか?継承の実装方法

4. 多重継承 (インターフェイス経由)

: 多重継承では、クラスは複数のスーパークラスを持ち、すべての親クラスから関数を継承できます。 Java は複数の継承とクラスをサポートしていないことに注意してください。 Java では、インターフェイスを通じてのみ多重継承を実現できます。以下の図では、クラス C はインターフェイス A と B から来ています。

Javaの継承とは何ですか?継承の実装方法

5. 混合継承 (インターフェイス経由)

: 上記の 2 つ以上のタイプの継承が混合されたものです。 Java はクラスを使用した多重継承をサポートしていないため、クラスは混合継承を実装できません。 Java では、インターフェースを通じてのみ混合継承を実現できます。

Javaの継承とは何ですか?継承の実装方法要約: 上記がこの記事の全内容です。皆さんの学習に役立つことを願っています。

以上がJavaの継承とは何ですか?継承の実装方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート