1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

書籍「Java本格入門」のアウトプット

Last updated at Posted at 2019-04-30

Java入門書のアウトプットメモ

入社から今まで研修+現場でぶっつけ学習だったので、「Java本格入門 モダンスタイルによる基礎からオブジェクト指向・実用ライブラリまで」
を購入。読みつつアウトプット。
まだ読み始めだが、以前にレビュで指摘されて「ああそうなのか」くらいにしか考えていなかった内容も載っていたりで、買ってよかったと思う。

修飾子

(モノによると思うけど)よく見るものをピックアップ

□abstract修飾子:クラスやメソッド、IFが抽象的であることを指定。(例、メソッドの宣言部のみで中身がない)
→abstractメソッドを持つクラスは必ずabstractクラスである必要がある。
また、必ず自クラスを継承したクラスを作成し、中身を定義しなければならない(abstract='抽象'のままではNG)

□static修飾子:クラスがインスタンス化されていなくてもメンバーにアクセスできる。
→クラス名.メンバー(メソッドやフィールド)名でアクセスできる。

□final修飾子:メンバーの上書きを禁止する
→フィールドに指定した場合・・・そのフィールドの値上書きを禁止
メソッドに指定した場合・・・オーバーライド禁止
クラスに指定した場合・・・サブクラス化を禁止

※オーバーライドとオーバーロード
オーバーライド:サブ(子)クラス側で、スーパー(親)クラスのメソッドを書き換えること。
親クラス

public class Super{

	public static void print(){
		System.out.println("私は親クラスです。");
	}
}

子クラス

public class Sub{

	public static void print(){
		System.out.println("私は子クラスです。");
	}
}

とした場合、Subクラスのprintメソッドの実行結果は「"私は子クラスです。"」となる。

オーバーロード:メソッド名が同じだが、引数の型や引数の個数が異なるメソッドを定義すること。


public static void print(int count){
	System.out.println(count + "個の商品を注文しました。");
}

public static void print(String name, String item){
	System.out.println(name + "さんは" + item + "を注文しました。");
}

命名規則

キャメルケース:単語の区切りを大文字で記述する記法。
例)getUserName
※先頭文字を大文字にしたものはパスカルケースと呼ぶこともあるらしい(例:GetCustomerName)

スネークケース:大文字で、単語をアンダースコア(_)で記述する記法。
例)OUTPUT_FILE_NAME

原則、下記のルール(なはず)
クラス名→大文字始まりのキャメルケース
変数名→小文字始まりのキャメルケース
定数名→スネークケース

変数は名詞、メソッドは動詞

booleanの変数名に”isXXX”は避けるべき。
また、booleanの変数名にフラグ(flg)はよく用いられるが、”flg”単体での命名は何を示すか不明瞭であるため避ける。

//状態を管理する変数(名詞で命名)
private boolean applyFlg = false;

//状態を問い合わせるメソッド(動詞で命名)
public boolean isApplied(){
	return this.applyFlg;
}
1
0
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?