JavaSilverでメモしたところ備忘録として残しておこうと思います。
エントリーポイント
- エントリーポイントの記述ミスはJavaのメソッドがっていればコンパイルが通るが、mainメソッドが認識されず例外が発生する
エントリーポイント条件
- public
- static
- void
- string[]もしくはString...
- mainというメソッド名(小文字)
- 変数名(引数)を付ける※argsでなくてもよい
finalやthrowsをつけても実行される
カプセル化
- アクセス修飾子を適切に設定することで「フィールド」や「メソッド」へ外部のプログラムからのアクセスを制限します。クラス米の独立性が高まり想定しない操作をされないように制御することが可能
public class Car {
// フィールド
private String name; // 名前
private int Speed; // 速度
// コンストラクタ
public Car() {
}
public Car(String name, int Speed) {
this.name = name;
this.speed = speed;
}
// アクセスメソッド
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getSpeed() {
return speed;
}
public void setSpeed(int speed) {
this.speed = speed;
}
}
メリット
- 意図しないアクセスを防ぐことにより未然にバグを防いだり、セキュリティ面の強化・提供されたメソッドを使うだけで内部構造を理解する必要がなくなる
デメリット
- ソースコードの記述量が増え、クラスの意図を理解していないと修正委によりカプセル化のメリットを壊してしまう可能性がある
swicth文におけるdefault
- swich文でdefaltラベルを使用すると式を評価したいずれもラベルと一致しない場合ラベルとして使用することができる。
フォロースルー時にもdefaultの処理は行われる