今回の目的
java silver資格試験に向けて勉強中のエンジニアがjava学習のために書いている記事です。
用語やjavaルールを忘れないために学習の一環として書いています。
どうぞお手柔らかに。
プログラム実行までの流れ
①java言語仕様にそってプログラムを作成して、拡張子.javaファイルを作成
②コンパイラが起動して、作成したプログラムがコンパイルされる。コンパイルされると拡張子.classファイルが作成される。
③javaコマンドによって、プログラムがJVM上で実行される
リテラリ
ソースプログラムの中で直接書き込まれたもの。
表現できるデータには、数値、文字列、null、真偽値がある
データの型
基本データ型は以下の8種類ある
種類 | データの型 | サイズ | 表現できる値 |
---|---|---|---|
整数 | byte | 8ビット | -128~127 |
short | 16ビット | -32768~32767 | |
int | 32ビット | -2147483628~2147483627 | |
long | 64ビット | -9223372036854775808~9223372036854775807 | |
浮動小数点 | float | 32ビット | IEEE754に基づく値 |
double | 64ビット | IEEE754に基づく値 | |
文字 | char | 16ビット | ¥u0000~¥uffff |
真偽値 | boolean | - | true,false |
参照型は基本データ型以外のもの。文字列や配列など。
ローカル変数
メソッド内やメソッド引数で定義される変数の有効範囲(スコープ)は、当該メソッド内にしか及びません。更に、メソッド内のブロック内部で定義された場合は、そのブロック内から制御が外れるとメモリ上からドロップされて永遠に失われる。このような変数をローカル変数と呼ぶ。ローカル変数は制御がそのスコープから外れるとメモリ上からドロップされる変数。
ローカル変数の型推論
varを使用してローカル変数を宣言した場合、型推論が可能。
宣言時に代入する値の型が明確な場合のみ使用できる。null値を代入した場合、コンパイルエラーが発生する。
複合代入演算子
演算子 | 使用例 | 説明 | 算術演算子での記述 |
---|---|---|---|
+= | a += b | 加算して代入 | a = a + b |
-= | a -= b | 減算して代入 | a = a - b |
*= | a *= b | 乗算して代入 | a = a * b |
/= | a /= b | 除算して代入 | a = a / b |
条件演算子
条件によって異なる式を実行するもの。三項演算子とも呼ばれる。
条件式 ? 式1 : 式2
メンバ変数
オブジェクトの属性を保持するための変数。
クラスのメンバであるため、メンバ変数と呼ばれる
ローカル変数で使用できたvarを使用した型推論は使えない。
メンバメソッド
オブジェクトの操作を行うメソッド。
これもメンバ変数と同様に、クラスのメンバであるため、メンバメソッドと呼ばれる
アクセス修飾子
クラスやメンバ変数、メンバメソッドへのアクセスを制限するために、アクセス修飾子がある。
アクセス修飾子を指定することで、公開範囲を制限する。
修飾子 | 説明 |
---|---|
public | すべてのクラスから利用可能 |
protected | 同じパッケージ内、または、継承関係がある場合のサブクラスからアクセス可能 |
省略 | 同じパッケージ内。パッケージプライベートとよぶ。 |
private | 同じクラス内から利用可能 |
カプセル化
オブジェクトの属性と関連する操作をまとめて保持することをカプセル化と言う。
クラス定義の際に、オブジェクトの属性となるメンバ変数と、それにアクセスするメソッドを1つのクラスに記述することで実現する。
また、属性を外部から隠ぺいすることを、データの隠ぺいと呼ぶ。
メンバ変数にprivate,メソッドにはpublicをつけることで成立する。