Javaの勉強のために、基礎知識を記述しています。
参考までにどうぞ。
配列について
・配列は、複数の値の集合を1つにまとめて扱うためのインスタンス
ーー 同じ型、もしくは互換性のある型の値しか扱えない
ーー 扱える要素はインスタンス生成時に決める。あとで要素数を変えることは不可。
・配列インスタンスの生成には、必ず扱える要素数を指定しなければならない
・cloneメソッドを使うと、同じ値を持った配列インスタンスが複製される
・配列の任意の範囲だけ切り出してコピーするには、Systemクラスのarraycopyメソッドを使う
ーー 第1引数にコピー元となる配列、第2引数はコピー元のどの位置からコピーするか、第3引数にコピー先の配列、第4引数はコピー先配列のどの位置からコピーするか、第5引数に第2引数の位置からいくつの要素をコピーするか
ループ構造について
・Javaの基本的な4つの繰り返し構文
ーー while文 条件式がtrueを戻す間、処理を繰り返す。条件式は必ず真偽値を戻す。
ーー do-while文 基本的にwhile文と同じ、違いは条件判定のタイミング。while文は処理前に条件に合致するか判定、do-while文は処理をしたあとに判定。
ーー for文 初期化文、条件文、更新文と繰り返し処理の構成
ーー 拡張for文 for文をシンプルにしたもの。構文は「一時変数:コレクション/配列」
・繰り返し処理を中断するには、breakを使う
・continueは残りの繰り返し処理をスキップ
・ラベルを使用すると、breakやcontinueのときに成魚を移す箇所を自由に指定できる
メソッド、カプセル化
・メソッドを定義する構文
ーー アクセス修飾子 戻り値型 メソッド名(引数の型 引数名){
// メソッド内の処理
}
・呼び出し元のメソッドに値を戻す場合は、return文を使用
・戻り値を何も戻さない場合は、voidを指定(戻り値型がvoidであるメソッドは値を戻せない)
・呼び出し元メソッドの引数は、メソッドで宣言されている種類、数を一致させなければならない
・可変長引数(数を自由に変更できる引数)は、引数の型の直後にピリオド3つ「...」をつけて宣言
ーー 同じ型の数が可変な引数をまとめられているだけで、異なる型はまとめられない
ーー 可変長引数以外の引数を受け取る必要がある場合、可変長引数は最後の引数にすること
・staticなフィールドはインスタンスを作らなくても使えるという性質を持つ
ーー staticなフィールドにアクセスするには「クラス名 . フィールド名」
ーー インスタンスの作成後であれば」、「変数名 . フィールド名」
ーー staticなメソッドは、staticで修飾されたものにしかアクセスできません
・オーバーロードとは、引数の数、型、順番が異なるメソッドを定義すること
ーー アクセス修飾子を変えただけではオーバーロードできない、メソッドのシグニチャの違いが必須条件
・コンストラクタ、3つのルール
ーー メソッド名をクラス名と同じにすること
ーー 戻り値は記述できない
ーー newと一緒にしか使えない(インスタンス生成時以外は呼び出しができない)
ーー public , protected , デフォルト(なし) , private 4つすべてのアクセス修飾子でコンストラクタを修飾できる
・オーバーロードされたコンストラクタから、ほかのコンストラクタを呼び出すにはthis
・スーパークラスのコンストラクタを呼び出すにはsuper
・カプセル化とは?
ーー オブジェクト指向設計のもっとも基本的な原則の1つ
ーー クラスの目的を明確化するために行うもの
ーー 関係するものが1つにまとまっていて、ほかのクラスには分散して同じものがない状態を目指す
ーー カプセル化はフィールドを非公開(private)にし、アクセスするためのメソッドを提供する(public)ことで完成する
・・・続く