まず、オブジェクト指向の概念
1.オブジェクト指向とは何ですか?
(1)それは、人間の思考の習慣に沿って、オブジェクト指向プログラミングのアイデアです。
(2)思考のオブジェクト指向の方法は、問題の考え方です。
2.三つの特徴:
(1)カプセル化
(2)遺伝
(3)多型
3.思考のオブジェクト指向の方法を確立します。
(1)第1の整数を、ローカル
(2)抽象的に、より具体的な
(3)何をすべきか、そしてどのようにします
4.どのようにオブジェクト指向を学ぶには?
(1)オブジェクト指向の構文を習得
(2)オブジェクト指向設計原理に精通しています
(3)オブジェクト指向の設計パターンに精通しています
オブジェクトクラスと、第二
1.クラス定義は:
(1)クラスは、分類カテゴリです
(2)分類することで、私たちは日常生活の中で、物事のさまざまな種類を区別することができ、私たちはしばしばそう
(3)したがって、クラスが同じプロパティ(属性)と食品動作(メソッド)のセットを有する基です。
オブジェクトの2.定義
動作させるための、およびオブジェクトに依存しなければならないために、実際のクラスは、オブジェクトは次の形式で定義されています。
=クラス名のオブジェクトクラス名の新しい名();
クラスのオブジェクトとの関係2。
(1)統合された機能として、製品の一般的なクラスを表し、オブジェクトは、個々の製品である、個体が特徴です。
(2)クラスの属性および方法の構成:
プロパティ:一つの特徴に相当
方法:一人の人間の行動の同等のような:話す、食べること、歌うこと、睡眠
3.クラスとオブジェクトのフォーマット定義
あなたはJavaでクラスを定義するには、次のステートメントを使用することができます。
{クラスのクラス名は、
属性名、
戻り値の型メソッド名(){}
}
オブジェクト定義フォーマット:
=クラス名のオブジェクトクラス名の新しい名();
あなたは、クラスのプロパティやメソッド(メソッド定義)にアクセスしたい場合は、
それは、次の構文に頼ることができます。
アクセスクラスの属性:
オブジェクトのプロパティ。
クラスメソッドを呼び出します。
オブジェクトメソッド()。
オブジェクトクラスの4.まとめ
(1)新しいキーワード:また、発現するアプリケーションのメモリ空間は、オブジェクトを作成し、オブジェクトをインスタンス化すると述べました。
(2)メモリ内のオブジェクトのサイズ、メモリサイズによって占有されるオブジェクトのすべてのプロパティの合計。参照型の変数は、32ビットシステムでは4バイト、64ビットシステム上の8バイトです。割合の大きさのうちプラスステルスターゲットデータ。
(3)同じタイプのみ割り当てることができます。
(4)同じオブジェクトに異なる基準点は、オブジェクトの値の変化への参照は、他の参考文献は、反射されます。
(5)プログラミングの問題が注目されるべきである、オブジェクトを決定する際に使用されていない、オブジェクトはできるだけ早くリリースされる:null参照
ヒープオブジェクトは、任意の参照変数を指摘されていない場合(6)、オブジェクトが回収されるようにJVM GCプロシージャガーベッジオブジェクトであると考えられます。
第三に、カプセル化
カプセル化の1.コンセプト
(1)オブジェクト指向の三つの特徴のいずれかのカプセル化。
(2)パッケージは、実装の詳細を非表示にのみ外部アクセスインターフェースを提供することです。
囲み:パッケージパッケージのカプセル化のプロパティ、メソッド、クラスのパッケージ、アセンブリ、モジュール式のパッケージ、システムインパッケージを...
2.パッケージのメリット
(1)モジュラー
(2)情報隠蔽
(3)コードの再利用
(4)デバッグに簡単にプラグイン
(5)セキュリティと
3.パッケージの欠点
それは、効率に影響を与えます
第四に、メンバ変数とローカル変数
クラス1.異なる位置
メンバー変数:クラスの定義
メソッドまたはメソッドで定義されたパラメータ:ローカル変数
メモリ内の2の異なる位置
メンバー変数:ヒープ(メンバ変数がオブジェクトに属し、ヒープメモリへのオブジェクト)
ローカル変数:メモリスタック(ローカル変数は、スタックメモリメソッドに、方法属します)
3.別のライフサイクル
メンバー変数:オブジェクトの作成に存在するとは、オブジェクトの破壊に消えます
ローカル変数:メソッドの呼び出しとともに呼び出し方法が存在するが、完成されたとは消えます
4.異なる値を初期化します
メンバー変数:デフォルトの初期値、デフォルトはnull参照タイプがあります
ローカル変数:なしデフォルトの初期値を、あなたは、定義に割り当て、その後、あなたは使用することができなければなりません
注意:
ローカル変数とメンバ変数は、近接の原理を使用して、方法で使用したものと同じ名前を、名前を付けることができます。
第五に、コンストラクタ
1.コンストラクタはどのようなものです:
(1)コンストラクタメソッド呼び出しは、オブジェクトの初期化動作のためのオブジェクトのクラスに構成されている場合
新しい方法は、最初に呼び出されたとき(2)の方法は、つまり、クラスのコンストラクタのオブジェクトインスタンスです。
2.メソッド定義された設定:
同様に、非復帰型宣言のクラス名およびメソッド名:コンストラクタの形式、クラスで定義されたコンストラクタが定義されています。
3.インスタンス化されたオブジェクトの構文:
犬の犬=新しい犬(); //新しい犬は、リアブラケットを有し、括弧は、メソッド呼び出しを表す、方法は、コンストラクタこの時点で呼び出され
4.コンストラクタのオーバーロード
引数なしのコンストラクタ:
パブリック犬(){} // つのパラメータを取るコンストラクタ: 公共犬(文字列名){ この .nameの= 名; }
複数のパラメータを有する構成の方法:
公共犬(文字列名、int型の年齢){ この .nameの= 名前; この .age = 年齢; }
コンストラクタの概要
(1)クラス名およびメソッド名、(空隙を含む)を宣言しない戻り値と同じに設定されています
(2)データ構造を初期化するための方法(特性)
(3)各クラスには引数なしのデフォルトコンストラクタを持っています
クラスのコンストラクタがある場合(4)無効なデフォルトコンストラクタメソッドを表示しています
(5)方法は、複数で構成することができるではなく、同一のパラメータは、この方法は、コンストラクタのオーバーロードになります
(6)コンストラクタでこれを使用して、他の構成メソッドを呼び出す。()、文章符号のなければなりません
(7)コンストラクタ呼び出しの間に、そこにエクスポートしなければなりません
(8)データの両方が保持され、通常、オブジェクトのコンストラクタまたはセッターメソッドを初期化するために使用することができます
(9)良いプログラミングの練習は、デフォルトコンストラクタを維持することです。(便利なフレームワークコードは、リフレクションを使用してオブジェクトを作成するために)
(10)プライベート犬(){}、コンストラクタ民営化、我々は1つのオブジェクトのみクラスことを確認する必要がある場合。
このクラスは、1つのオブジェクトのみを必要とする場合には?例えば、ツール(ないクラスの属性、行動のみ)およびツールは、頻繁にオブジェクトを使用していません。唯一のクラスでのみ1つのオブジェクトとして定義するかどうかを決定するために、オブジェクトとオブジェクトを秤量使用してメモリを複数生成します。