Java
 Computer >> コンピューター >  >> プログラミング >> Java

Javaでの継承と構成の違い


コンポジションは、クラスがクラスのフィールドとして別のクラスのインスタンスを持つことができる設計手法です。継承は、クラスを拡張することにより、1つのオブジェクトが親オブジェクトのプロパティと動作を取得できるメカニズムです。

構成と継承はどちらも、クラスを関連付けることでコードの再利用性を提供します。コンポジションを使用すると、継承の機能も取得できます。以下は違いです。

Sr。いいえ。 キー 継承 構成
1
基本
継承は「is-a」関係です
構成は「has-a」です。関係
2
コードの再利用
継承では、クラスlassは1つのインターフェースしか拡張できないため、コードを再利用できるのは1つのクラスのみです。
複数のクラスでコードを再利用できます
3
スコープ
継承はコンパイル時にその機能を提供します
構成は実行時に簡単に実現できます
4
最終
最終クラスのコードを再利用することはできません
最終クラスからでもコードを再利用できます
5
メソッド
親クラスのパブリックメソッドと保護されたメソッドの両方を公開します
公開されません。それらはパブリックインターフェースを使用して相互作用します。

継承の例

class Animal{
   String name="Orio";
}
class Dog extends Animal{
   String type="Dog";
   public static void main(String args[]){
      Dog p=new Dog();
      System.out.println("Name:"+p.name);
      System.out.println("Type:"+p.type);
   }
}

構成例

public class Student {
}
public class College {
   private Student student;
   public College() {
      this.student = new Student();
   }
}

  1. Javaでの例外とエラーの違い

    例外とエラーはどちらもThrowableクラスのサブクラスです。このエラーは、主にシステムリソースの不足が原因で発生する問題を示しており、アプリケーションはこれらのタイプの問題をキャッチするべきではありません。エラーの例としては、システムクラッシュエラーやメモリ不足エラーなどがあります。エラーは主に実行時に発生し、チェックされていないタイプに属します。 例外は、実行時およびコンパイル時に発生する可能性のある問題です。これは主に、開発者によって作成されたコードで発生します。例外は、チェックされた例外とチェックされていない例外などの2つのカテゴリに分類されます。 Sr。いいえ。 キー

  2. Javaでのシリアル化と外部化の違い

    シリアル化と外部化はどちらも、オブジェクトをストリームバイトに変換し、バイトストリームをデータベースまたはメモリに格納するプロセスです。 java.io.Serializableインターフェイスを実装するクラスはシリアル化できます。一方、アプリケーションの要件に基づいてカスタムシリアル化に使用される外部化。外部化はjava.io.Serializableを拡張します。 Sr。いいえ。 キー シリアル化 外部化 1 インターフェース シリアル化はマーカーインターフェイスです 外部化には、readExternalメソッドとwriteExternalメソッドの2つのメソ