ホームページ >Java >&#&ベース >カプセル化されたJavaとは何ですか

カプセル化されたJavaとは何ですか

angryTom
angryTomオリジナル
2019-11-11 09:47:283952ブラウズ

カプセル化されたJavaとは何ですか

カプセル化javaとは

オブジェクト指向プログラミング手法におけるカプセル化(英語: Encapsulation) は、抽象関数インターフェースの実装詳細を部分的にパッケージ化して非表示にする方法を指します。

カプセル化は、外部クラスによって定義されたコードによってクラスのコードとデータがランダムにアクセスされるのを防ぐ保護バリアと考えることができます。

このクラスのコードとデータにアクセスするには、厳密なインターフェイス制御を渡す必要があります。

カプセル化の主な機能は、コードを呼び出すプログラム フラグメントを変更せずに、独自の実装コードを変更できることです。

適切なカプセル化により、プログラム コードの理解と保守が容易になり、プログラム コードのセキュリティも強化されます。 (推奨チュートリアル: java チュートリアル)

カプセル化の利点

1. 適切なカプセル化により結合を軽減できます。

2. クラス内の構造は自由に変更できます。

3. メンバー変数をより正確に制御できます。

4. 情報を非表示にし、詳細を実装します。

Java カプセル化とは、端的に言うと、いくつかの共通の実装ロジックをボックス (クラス) に入れることであり、入り口と出口はこのボックス上にあります。使いたい場合は、このボックスを出入り口に接続するだけで使用できます。使用しない場合は、そのまま捨ててください。コードには影響しません。 。

プログラマにとって、カプセル化を使用する目的は次のとおりです:

1. 怠け者になって一度一生懸命作業すると、後で多くのコードを節約でき、コードの再利用が強化されます。 Nature

2. コードを簡素化し、理解しやすくする

3. コア実装ロジック コードを非表示にし、外部ロジックを簡素化し、他の人がコードを変更できないようにします。これが jar の機能です。

4. 1 対 1 の 1 つの機能はこの機能のみを提供します。最終的に混乱を招くため、ヘアロープを一緒に使用することは避けてください。

#例:

public class EncapTest{
 
   private String name;
   private String idNum;
   private int age;
 
   public int getAge(){
      return age;
   }
 
   public String getName(){
      return name;
   }
 
   public String getIdNum(){
      return idNum;
   }
 
   public void setAge( int newAge){
      age = newAge;
   }
 
   public void setName(String newName){
      name = newName;
   }
 
   public void setIdNum( String newId){
      idNum = newId;
   }
}

上記の例では、パブリック メソッドは、外部クラスがクラスのメンバー変数にアクセスするための入り口です。

通常、これらのメソッドはゲッター メソッドおよびセッター メソッドと呼ばれます。

したがって、クラス内のプライベート メンバー変数にアクセスしたいクラスは、これらのゲッター メソッドとセッター メソッドを経由する必要があります。

次の例は、EncapTest クラスの変数にアクセスする方法を示しています:

public class RunEncap{
   public static void main(String args[]){
      EncapTest encap = new EncapTest();
      encap.setName("James");
      encap.setAge(20);
      encap.setIdNum("12343ms");
 
      System.out.print("Name : " + encap.getName()+ " Age : "+ encap.getAge());
    }
}

上記のコードはコンパイルされて実行され、結果は次のとおりです:

Name : James Age : 2

以上がカプセル化されたJavaとは何ですかの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。