ジャワ - オブジェクト指向の三つの特徴(カプセル化、継承、多型)

A.パッケージ

1.パッケージとは何ですか?

  一緒に抽象操作やデータのデータパッケージは、実装が隠された変数を詳細に表示します。データは、許可された操作(メンバー法)によって、データにアクセスすることができるプログラムの他の部分内で保護されています。

2.パッケージをステップ? 

   1.プライベートメンバ変数は、変更パッケージを必要とします。

   2.オープンアクセスを提供する方法が提供されるか、または私有財産れます。(取得/設定)メソッドを介して取得

3.利点と役割のパッケージ?

  パッケージの役割:1つのフレーム2のツール

  パッケージの利点:1. 3. 2.単純なデータの操作の安全性を向上させるには、メソッドの実装を隠します。

 

II。継承

1.フォームを継承しましたか?

  延びB A
  A:サブクラスサブクラス
  B:スーパークラスのスーパークラス、親クラス、基底クラス

2.パッケージのメリット?

  1.コードの冗長性を低減するために、コード2多型前提を設けるコード改善スケーラビリティ3の再利用性を向上させます

3.説明?

  それは親クラスのプロパティとメソッドを持っていた後、1サブクラスは、(我々は、親クラスのコンストラクタを継承することができるとは思わない)親クラスを継承
  2.サブクラスは親クラスが関係「である」存在している必要があります継承
  3.父クラスのプロパティが民営化された後、サブクラスが直接アクセスすることはできませんが、我々は間接的な方法を通じて(設定/取得)にアクセスすることができ、財産の親クラスが直接アクセスすることはできませんが、我々はまだプロパティがに継承されていることを信じています。
  サブクラスに加えて4.属性とメソッドを継承することができますが、また、独自の属性とメソッドを定義することができ
  、直接および間接の親の親:親クラスの概念は相対的で、親クラスが分かれている
  以外6.サブクラスプロパティとメソッドは、直接の親クラスを取得することができ、属性とメソッドは、親クラス間接的に取得することができる
  すべてのクラスはObjectクラスを継承7。クラスは、クラスのディスプレイを継承しない場合、デフォルトのクラスはObjectクラスを継承します
  8.親クラスは複数の子を持つことができますが、子供が唯一の親クラスを持つことができます(Javaの単一継承特性)

4.書き換える方法?

  サブクラスは親クラスを継承した後、親クラスのメソッドに満足していない場合は、使用方法を書き換える考えることができます(カバレッジ、書き換え)

  説明:

    1.サブクラスは親クラスのメソッドは、実際のメソッドサブクラスが呼び出しをオーバーライドし、親クラスのメソッドを呼び出すことにより、サブクラスのオブジェクトが上書きされ、書き換えられている場合は、親を継承します。

  詳細: 

    権限修飾戻り型メソッド名(パラメータリスト){
      メソッドメンバ
    }

    

    メソッド名とパラメータリストは、親クラスのメソッドを書き換えやサブクラスされているのと同じメソッドをオーバーライドする必要があり
    、メソッドのオーバーライド権限の親修飾子2.サブクラスのオーバーライド権限修飾方法は以上である
      親クラスであります書き換えられた値サブクラスのメソッドの戻り値が書き換えられ返す結果
        ナンバーナンバーナンバーとサブクラスがあり
        、ボイドができます無効に
        しませダブルint型
    スローされた例外の3サブクラスがメソッドを書き換えている親クラスよりも大きくありません異常な

    注意:

      1.親クラスプライベートその後、改質サブクラスによってオーバーライドされたメソッドでない場合は
      、同じ方法およびサブクラスは、次いで、静的または静的(書換え処理せずに同時に添加した場合には(メソッドをオーバーライドしない)2。 )

    オーバーライド//注@ 4:現在のメソッドの方法を説明するためにオーバーライドされます

 

概要:スーパーこの差:

     1.代表は同じものではありません。

          この:あなたのアプローチを表し、呼び出し元オブジェクト。

          スーパー:親クラスのオブジェクト参照のスペースの代わりに。

      2.前提は矛盾しています。

          これは:また、非継承条件で使用することができます。

          スーパー:唯一の継承の条件の下で使用することができます。

      3.コンストラクタを呼び出します。

           この:クラスのコンストラクタには、このメソッドを呼び出します。

           スーパー:親クラスのコンストラクタの呼び出し

III。ポリモーフィック

物事のクラスの様々な形態:1.多型  

2.多型を認識:
  1.一般:書換方法、オーバーロード、多型サブクラスオブジェクト
  狭義の2:多型サブクラスオブジェクト
3.サブクラスオブジェクト多型:オブジェクト参照親クラスのサブクラスを指し

パブリック クラスのテスト{ 
    
    公共 静的 ボイドメイン(文字列[]引数){ 
        
        // のオブジェクトサブクラスの親クラスへの参照 
        人= P- 新しい新しい女性();    
         // (結合ダイナミック)仮想メソッドアプリケーション:実行中、左に見てコンパイル右に見える
        p.eat(); 
        p.show(); 
        
        // 多型の欠点:あなたは子クラス独自のメソッドとプロパティを呼び出すことはできません
        
        * / 
         多型の場合には一人で自分自身をサブクラス呼び出す方法:需要*いくつかのメソッドとプロパティは、
         下方遷移* 
         * / 
        
        女女 = (女性)P 
        woman.buyを(); 
        
        // にClassCastException -キャスト例外
         // オブジェクトP自体がに変換されるため、そう女性マン例外であろう
 //         人m =(MAN)P;
 //        m.run(); 
        
        / * 
         *デマンド:どのように異常な型変換を防止するために、
         *のinstanceofのA:Aは、オブジェクトタイプAのインスタンスであります それはそうでない場合はfalseに、trueを返した場合
         * / 
        
        IF(P instanceofの女性){ 
            するSystem.out.println( "真の" ); 
        } { 
            するSystem.out.println( "偽の" ); 
        } 
        

    } 
}

 

おすすめ

転載: www.cnblogs.com/jiujiang/p/11601076.html