JAVA は抽象クラスとインターフェイスを要約します

黄舟
リリース: 2017-02-20 09:59:43
オリジナル
1356 人が閲覧しました

1. 抽象クラス

a) 抽象クラスのサブクラスは、親クラスのすべての抽象メソッドをオーバーライドする必要があります

オーバーライドしたくない場合は、サブクラス自体が同じ抽象クラスを実行しない限り

b)

抽象クラスはコンストラクターを許可しますか?

はい

許可します! (クラス後に確認してください)、説明: 描画クラスのコンストラクターには、別の賢いアプリケーションもあります。それは、サブクラスが内部で実行する必要があるコードを実装することです。

2.

Myeclipse使用方法の詳細

a)

MyEclipseでは、左側に三角形が表示されます。 立体三角形の場合、それは、このメソッドがオーバーライドされた親クラスの通常のメソッドであることを意味します。それが中空の三角形の場合は、このメソッドがオーバーライドされた親クラスの抽象メソッドであることを意味します。 3、ポリモーフィズム

a) ポリモーフィズムを達成するための条件:

i.

ii. iii。親クラスの参照は、サブクラス オブジェクトを指します。

ポリモーフィズム プログラムのスケーラビリティと柔軟性を反映します。 c)

ポリモーフィズムを実現する 2 つの方法: i. メソッドの仮パラメータとして抽象親クラスを使用します。

メソッドの戻り値の型として抽象親クラスを使用します。

IV.

final

キーワード: 最終的な意味 a)

変更されたクラスは、このクラスがサブクラスを持つことを許可されていないことを意味します。 ; b)

変更されたメソッドは、このメソッドがオーバーライドを許可しないことを意味します。

c) 変数を変更するとは、その変数が定数になることを意味します。

このセクションの焦点はインターフェイスです。

《マスターすべき重要なポイント》a)

これは特別な抽象クラスです。

i

その作成理由は、いくつかの特別なメソッドが親クラスへの抽象化に適していないためです。 ;

その理由は、多くのサブクラスがこの動作を必要としないためです

この場合、これを解決するには、特性を考慮しながら共通性を考慮する必要があります。矛盾 それはインターフェースと呼ばれるものです!

b) インターフェースの本質: 機能を表し、

i はクラスの分類管理です。具体的には、サブクラス自体に分割されます。

c) クラスは 1 つの親クラスのみを継承できますが、複数のインターフェースを実装できます。継承;

d)

インターフェースの基本構文:

i ではパブリック抽象メソッドのみが許可されます。インターフェース

変数 (定数) (授業後の自己認証)

6. インターフェースには、クラス

によって実装されるメソッドが含まれています 7. インターフェースとクラスの類似点:

a) インターフェイスには複数のメソッドを含めることができます。

b) インターフェースファイルは

.java

で終わるファイルに保存され、ファイル名にはインターフェース名が使用されます。 c) インターフェースのバイトコードファイルは、

.class

で終わるファイルに保存されます。

d) インターフェイスの対応するバイトコード ファイルは、パッケージ名と一致するディレクトリ構造内に存在する必要があります。

8. インターフェースとクラスの違い:

a) インターフェースを使用してオブジェクトをインスタンス化することはできません。

b) インターフェイスにはコンストラクター メソッドがありません。

c) インターフェース内のすべてのメソッドは抽象メソッドである必要があります。

d) インターフェースには、static変数とfinal変数を除くメンバー変数を含めることはできません。

e) インターフェースはクラスによって継承されませんが、クラスによって実装される必要があります。

f) インターフェースは多重継承をサポートしています。

上記は、JAVA の抽象クラスとインターフェイスの概要です。その他の関連コンテンツについては、PHP 中国語 Web サイト (www.php.cn) に注目してください。

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