文法など
Javaネーミング
Class
・大文字で始める
・名詞とする
・例 Employee
インターフェース
・大文字で始める
・形容詞とする
・例 Printable
メソッド
・小文字で始める
・動詞とする
・例 print()
変数
・小文字で始め、大文字で区切る
・例 firstName
パッケージ
・小文字とする
・例 java.lang
定数
・すべて大文字とする
・例 MAX_NUMBER
コメント
・1行のコメントは、// 。 // 以降がコメントとなる
実行されるプログラムの行の後につけてもよい。
// ここはコメント
・複数行のコメントは、/* で始まり、*/で終わる
/* コメント
コメント
コメント */
変数の宣言
・型 変数名 ;
int empno
変数名の規則
・使えるのは、文字、数字、アンダースコア、ダラー($)
・先頭に数字は、使えない
・予約語でないこと
変数への値の代入
・変数名 = 値 ;
empno = 80 ;
変数の初期化
・型 変数名 = 初期値 ;
int empno = 80 ;
キャスト
・(変換したい型名) 値など ;
int i = (int) 12.3
・浮動小数点を、整数にキャストすると、切り捨てられる
if文
if (条件式) {
処理
}
import static
import static パッケージ名
スタティックなメソッドや、フィールドを
参照したいときに、利用
long l = Math.round(d)
が
import static java.lang.Math.round
long l = round(d)
となる
ラムダ式
次のように書くようです。
(int x , int y) -> { return x+y ; } or (int x , int y) -> x+yこんな意味のようです。
(仮引数) -> { 処理の式(複数あり); } (仮引数) ->処理の式
1.ネーミング
1-1.変数やメソッド名、パッケージ名は、英語を利用する。ローマ字読みは、利用しない
1-2.パッケージ名は、小文字とする
1-3.パッケージ名は、英語で省略しない
1-4.クラス名は、役割を表す名前とする
1-5.クラス名の先頭は、大文字とする
例) Employee
1-6.例外クラスは、クラス名の末尾に「Exception」をつける
1-7.インターフェースを実装するクラスには、「Impl」などをつける
例)EmployeeBeanImpl
1-8.抽象クラスには、クラス名の先頭に「Abstract」をつける
例) AbstractSample
1-9.テストクラスの名前は、対象のクラス名+Testとする
1-10.メソッド名は、動詞ではじめる
例) InsertEmp
1-11.メソッド名の区切りは、大文字にする
1-12.オブジェクトを生成するメソッド名は、create+オブジェクト名とする
1-13.変換のためのメソッドは、to+変換するオブジェクト名とする
例)toDate
1-14.boolean の戻り値を戻すメソッドは、次のようなものとする
is + XXX 例) isEmpty()
can + XXX 例) canPut()
has + XXX 例) hasItem()
その他 例) contains()
1-15.定数の変数は、すべて大文字とする。区切り文字は、「_」とする
例) public static final int INT_CONSTAT_VALUE =100
1-16.forループのカウンターは、i, j ,k ・・・を利用する
2.コーディングのルール
2-1.オブジェクトの参照にはインターフェースを利用する
違反例)Arralist sampleList
修正例) List sampleList
2-2.推奨されないAPIを使用しない
2-3.適切なアクセス修飾子を使って宣言する
2-4.条件分岐では、「!」を使わない。== false や == true を使う
読みやすさのため
2-5. 不等号は、左向き(<, <=)とする
2-6.import 文にアスタリスクを使用しない
2-7.一度に複数の変数を宣言しない
悪い例)private String empName , empDeptName ;
修正例) private String empName ;
2-8.配列宣言は、型名[] とする
悪い例) int sampleArray[]
修正例) int[] sampleArray
2-9.定数はstatic finalで宣言する
2-10.ローカル変数は利用する直前で宣言する
2-11.文字列同士が同じ値か比較するときは、equals()メソッドを利用する
== や != を利用しない。これは、同じオブジェクトかを判定することとなる
2-12.文字列の連結にはStringBuilderクラスを利用する
Stringの+は、都度オブジェクトを作り直すので、パフォーマンスが低下する
2-13.文字リテラルと変数を比較するときは、文字リテラルのequals()メソッドを利用する
Stringオブジェクト.euqals([文字列]) ではなく、
文字列リテラル.euqals(Stringオブジェクト)メソッドを使う
前者は、nullチェックをする必要がある。
後者は、nullチェックがいらない。
2-14. if 文など、制御構文の 括弧 { } は、省略しない
2-15. for 文のカウンターは、0から始める
サンプルなど
HelloWorld
1.サンプル
以下のソースファイルを作り、 HelloWorld.javaという名前で保存します。
public class HelloWorld {
public static void main(String[] args) {
System.out.println("Hello, World!");
}
}
2.コンパイル
以下のコマンドでコンパイルします。
javac HelloWorld.java
HelloWorld.classが生成されます。
以下のコマンドで実行します。
java HelloWorld
Hello, World!
が出力されます。
定数は、static final で宣言する。
3.実行
以下のコマンドで実行します。
java HelloWorld
Hello, World!
が出力されます。
定数の利用
1.文法
定数は、static final で宣言する。
2.サンプル
interface Const{
static final int MAXVALUE = 10 ;
static final int MINVALUE= 1 ;
}
class Main {
public static void main(String[] args) {
System.out.println(Const.MAXVALUE);
System.out.println(Const.MINVALUE);
}
}
10
1
と表示されます。
int nums[] = {1,2,3,4,5} ;
System.getProperty("java.version")
を使います。
public static void main(String[] args) throws Exception {
String javaVersion = System.getProperty("java.version");
System.out.println("実行中のJVMバージョン: " + javaVersion);
}
実行中のJVMバージョン: 18.0.2
が表示されました。
3.実行結果
10
1
と表示されます。
forで配列を処理する例
1.サンプル
for(var x : nums){
System.out.println(x);
}
1
2.実行結果
2
3
4
5
が出力されます。
プログラムを実行しているJVMのバージョンを出力する
1.文法
を使います。
2.サンプル
String javaVersion = System.getProperty("java.version");
System.out.println("実行中のJVMバージョン: " + javaVersion);
}
3.実行結果
が表示されました。
0 件のコメント:
コメントを投稿