シューティングゲーム初日:
1. 6つのオブジェクトクラスを作成し、Worldクラステストを作成
シューティングゲームの2日目:
1. 6つのオブジェクトクラスに構築メソッドを追加してテストする
シューティングゲームの3日目:
1.小さな敵の飛行機、大きな敵の飛行機、小さな蜂、弾丸配列をテストし、テストする
2. FlyingObjectスーパークラスをデザインする、6つのオブジェクトクラスがそれぞれ継承する
3. FlyingObjectスーパークラスの2つの構築メソッドをデザインする、オブジェクトクラスは個別に呼び出されます
レビュー:
1.メソッドのオーバーロード:
1)メソッド名が同じで、パラメーターリストが異なり、メソッド本体が異なるクラスで発生します
。2)コンパイラーは、コンパイル中にメソッドのシグネチャに従って、呼び出されたメソッドを自動的にバインドし
ます。コンストラクター:
メンバー変数に初期値を割り当てます
。これは、クラスと同じ名前で戻り値の型のないオブジェクトを作成するときに自動的に呼び出され
ます。これを記述しない場合、デフォルトはパラメーター構築ではありません。自分で記述した場合、デフォルトでは提供されなくなります。3.this:を
オーバーロードできます。
メソッドを呼び出すオブジェクトは、このオブジェクトを参照します
。メンバー変数名------------メンバー変数
thisにアクセスします。メソッド名()--------------メソッドを呼び出す
this()---------------------コンストラクタ
4を呼び出します。null:空、オブジェクト
値への参照はnullでないため、参照を指定することはできません操作、
操作が発生した場合NullPointerException Nullポインター例外
5.参照型変数描画等号:
同じオブジェクトを指す、
基本型変数描画等号に
影響:割り当て、影響しません
笔记:
1.引用类型数组:
1)Student [] stus = new Student [3];
stus [0] = new Student( "zhangsan"、25、 "LF");
stus [1] = new Student( "lisi"、26、 "JMS");
stus [2] = new Student( "wangwu"、28、 "SD");
stus [1] .age = 36;
2)Student [] stus = new Student [] {
new Student( "zhangsan"、25、 "LF")、
new Student( "lisi"、26、 "JMS")、
new Student( "wangwu"、28、 " SD ")
};
3)int [] [] arr = new int [3] []; ------数组的数组
arr [0] = new int [4];
arr [1] =新しいint [4];
arr [2] =新しいint [4];
arr [1] [0] = 100;
for(int j = 0; j <arr [i] .length; j ++){
arr [i] [j] =(int)(Math.random()* 100);
System.out.println(arr [i] [j]);
}
}
2.継承:
1)役割:コードの再利用
2)拡張による継承
3)スーパークラス/親クラス:すべての派生クラスに共通のプロパティと動作
派生クラス/サブクラス:派生クラス固有の属性と動作
4)派生クラスがスーパークラスを継承した後、派生クラスは次のようになります:派生クラス+スーパークラス
5)スーパークラスは複数の派生クラスを持つことができ
、派生クラスはスーパークラスのみを持つことができます---- -単一継承
6)継承は推移的です
7)Java規制:派生クラスを構築する前に、スーパー
クラスコンストラクターが呼び出されない場合は、まずスーパークラスの派生クラスを構築する必要があり
ます-------次に、デフォルトのsuper()がスーパークラスを呼び出します引数なしのコンストラクタは、
スーパーときに呼び出さないクラスのコンストラクタ派生
-------デフォルトがもはや提供される
派生クラスコンストラクタスーパー()コンストラクタは、スーパー呼び出したときに最初の行に位置する
手段:3。スーパーを現在のオブジェクトに代わってスーパーオブジェクト
super を使用:
1)super。メンバー変数名----スーパークラスのメンバー変数へのアクセス
2)super。メソッド名()----------スーパークラスメソッド(明日)を
呼び出す3)super()-----------------呼び出すスーパークラスの構築メソッド
1)クラスPersonの作成:
1.1)メンバー変数:名前、年齢、住所
1.2)構築メソッド:Person(3パラメーター){}
1.3)メソッド:sayHi(){3つのメンバー変数の出力値}
2)クラスStudentを作成し、Personを継承:
2.1)メンバー変数:studentId
2.2)コンストラクター:Student(4パラメーター){}
3)クラスTeacherを作成し、Personを継承:
3.1)メンバー変数:salary
3.2 )コンストラクタ:Teacher(4パラメータ){}
4)クラスDoctorを継承し、Personを継承:
4.1)メンバ変数:レベル
4.2)コンストラクタ:Doctor(4パラメータ){}
5)クラスTest、main( )で:
5.1)3つの要素を含むStudent配列を作成し、helloでトラバースする
5.2)3つの要素を含むTeacher配列を作成し、helloでトラバースする
5.3)2つの要素を含むDoctor配列を作成し、helloでトラバースする
クラスAoo {----------------------- a
int a;
}
クラスBooはAooを拡張します{----------- b + a
int b;
}
クラスCooはBooを拡張します{----------- c + b + a
int c;
}
クラスDooはCooを拡張します{----------- d + c + b + a
int d;
}
Student zs = new Student();
zs.stuId / study();
zs.name/age/address/eat()/ sleep();
教師ls =新しいTeacher();
ls.salary / teach();
ls.name/age/address/eat()/ sleep();
クラスPerson {------------------------ //超类
文字列名;
年齢;
文字列アドレス。
void eat(){}
void sleep(){}
}
クラスStudent extends Person {---------派生类
String stuId;
void study(){}
}
クラスTeacherはPerson {---------派生类
double salaryを拡張します。
void tell (){}
}
クラスDoctorはPerson {----------派生类
文字列レベルを拡張します。
void cut(){}
}
プログラムの継承:
コードは記述なしで使用できます
連続での生活:
1)継承:
お金は、私が過ごすことができ稼ぐために必要はありません
王位を継承する)2:
自分自身を再生していない国を、私が座っている可能性があり
:3)の継承作業を
作業をするために見てする必要はありません、と彼は可能です
3:arrの長さ
4:arr の各要素の長さ
int [] [] arr = new int [3] [4]; // 3行4列
for(int i = 0; i <arr.length; i ++){
for(int j = 0; j <arr [i] .length; j ++){
arr [i] [j] = 100 ;
}
}
int [] arr = new int [3];
Student [] stus = new Student [3];
// int []の配列を宣言し、3つの要素を含む
//各要素のタイプはint []で、デフォルト値はnull
int [] [] arr = new int [3] [];
arr [0] = new int [2];
arr [1] = new int [3];
arr [2] = new int [2];
// arrの2番目の要素の最初の要素には値100
arr [1] [ 0] = 100;
arr -------------------- int [] []
arr [0] ----------------- int []
arr [0] [0] -------------- int
INT [] ARR =新しいINT [] {
1、
5、
7
}。
Student [] stus = new Student [] {
new Student()、
new Student()、
new Student()
};
基本型変数--------インストール固有番号
参照型変数--------インストールアドレス
int [] arr = new int [3];
arr [0] = 100;
Student [] stus = new Student [3]; // Student配列オブジェクトを作成
stus [0] = new Student(); // Studentオブジェクトを作成
Airplane [] as = new Airplane [5];
as [0] = new Airplane();
//整数配列arrを宣言し、3つの要素を含む
//各要素はint型で、デフォルト値は0
int [] arr = new int [3];
// 3つの要素を含むStudent配列を宣言します
//各要素はStudentタイプで、デフォルト値はnullです
Student [] stus = new Student [3];
// 20個の要素を含む飛行機の配列を次のように宣言します
//各要素のタイプは飛行機です。デフォルト値はnullです
。Airplane [] as = new Airplane [20];
// 23個の要素を含むBigAirplane配列basを宣言します
//各要素はBigAirplaneタイプで、デフォルト値はnullです
BigAirplane [] bas = new BigAirplane [23];
Bee [] bs;
Bullet [] bts;
基本型------------
配列型------------同じ型
独自のデータ型を作成
クラスEmp {
文字列名;
年齢;
二重給与;
}
void print(String name、int age、double salary){
}