クラス名 extends スーパークラス名 implements インターフェース名

1つのソースファイルにpublic classはひとつまで

abstract 抽象クラス

final このクラスからサブクラスを作れないようにする

protected 同じパッケージのクラス、このクラスのサブクラス、
クラス内部からアクセスできる。

パッケージがまだよく理解できてないんだよな。
インターフェースもだが。
インターフェースはC#にもあるし、ちゃんと理解しないと。

クラス変数インスタンス変数がある。
static があるとクラス変数になる。
インスタンス変数はインスタンスごとに異なる値になる。

クラス変数はクラスで唯一の値を保持する。

クラス名.クラス変数名
インスタンス名.クラス変数名 でアクセスできる
クラス変数はインスタンスを生成しなくても参照できる。
インスタンス変数はダメ

finarl フィールドの値を変更できないようにする。
pulic static fainal で定数として利用できる。

フィールドの隠蔽
スーパークラスとサブクラスに同名のフィールド
を定義するとスーパークラスのものが隠蔽される

this 自分のインスタンスを表す
super スーパークラスのに参照する

サブクラスのフィールドとスーパークラスと同名にするべきではない!

宣言部分:下の引数まで
public void メソッド名(){
本体部分
}

メソッドにもクラスメソッドとインスタンスメソッドがある。
メソッドにfinal をつけるとオーバーライド出来ないようにする。

クラスメソッドはインスタンスを生成しなくても呼び出せる。
またクラスメソッドは自分のクラスメソッドと、クラス変数にアクセスできる

ラッパークラス:(おそらく)プリミティブ型の変数を無理やり参照型にさせるために、
プリミティブ型の変数を格納したクラスをつくること。

synchronaized
メソッドが複数のインスタンスから同時に実行されないようにする。

渡すとき実引数、受け取る側は仮引数
仮引数はメソッド内のみ有効

オーバーライド(再定義)が成立するのは両方共にインスタンスメソッドの場合のみ
クラスメソッドの両立は隠蔽になる。

public static void main(String args[])
{
}
について。このmainから実行される。
argsの名前は何でもいいが、argsが一般的
このstingはjavaコマンド(例)java クラス名.java ohayou konnitiha
とやった場合
args[0]にohayou
args[1]にkonnitihaが入るらしい。

クラスは奥が深い。
私が特に覚えたい所(知識定着が薄いところ)は赤文字にした。
要確認。