静的: 静的は、静的変数のコピーは1つだけ、ローカル変数として宣言することはできないということにかかわらず、クラスのインスタンスのオブジェクトの数の、静的オブジェクトの独立変数を宣言するのに使用される静的。
静的静的メソッド修正メソッドと呼ばれ、静的メソッドは非静的変数のクラスを使用することはできません。静的データはパラメータリストから取得され、データが計算されます。
Class3にパッケージ; インポートjava.util.Date; パブリックMainClassクラス{ パブリック静的int型のA = 10; のpublic static final文字列名= "ジョン・ドウ"; 最終B = A INTパブリック静的; パブリック静的な無効メイン(文字列[]引数) { //名=「ジョン・ドウ」、直接ここに//エラー。 ; = 20 Aで のSystem.out.println(+ A「最終修正された参照変数の値を変更する変更されました」); } }
最終:最終的な基準を変更することはできないが、最終的な修飾変数の値を変えることができる、ここで簡単に説明する:最終変性変数が一定に相当し、その値を変更できない、しかし場合、最終的な修飾変数参照変数は、その後、参照変数のアドレスを変更することはできませんが、内部参照変数の内容は、あなたが人々の家の番号を覚えているだけのように、変更することができますが、あなたは新しい人生を持っていることが家族の中で他の人がいるかわかりません子どもたちは、夫婦でとのように、増加させることができます。最終的なクラスは、クラスが全く継承することができない、継承することができない、最終的な任意のクラスの特性を、
パッケージClass3に、 パブリック クラスMainClass { パブリック 静的 int型 A = 10 ; 公共の 静的 最終文字列名=「ジョン・ドウ」、 パブリック 静的 最終 int型 B = A; パブリック 静的 ボイドメイン(文字列[]引数){ // 名前=「リー4つの「; // ここで直接エラー A = 20である; のSystem.out.println(」最終修正された参照変数の値の変化は、「変化を生じます+ ); } }
要約:使用抽象修飾クラスは、抽象クラスが抽象メソッドできないクラスは抽象クラスを拡張し、次に抽象クラスを使用するために利用することができる、抽象クラスオブジェクトをインスタンス化することができない、抽象クラスと呼ばれるが、抽象的な方法で抽象存在しなければなりませんクラス。使用抽象的な我々は抽象メソッドを呼び出して修正された方法を、抽象メソッドが抽象メソッドは、どこ実装は、抽象メソッドが使用されていることをクラスのサブクラスを使用する必要があり、直接使用することが可能ではない抽象メソッドは、サブクラスによって継承された抽象クラスでなければなりません、サブクラスは抽象クラスでない限り、クラスは、抽象クラスを継承することができるが、このクラスは、複数のインターフェイスを実装することができます。
メイン:
パッケージClass3に。 輸入java.util.Date; パブリッククラスMainClass { SonClassスタッフ=新しいSonClass(); staff.name = "GWL"。 staff.age = 25。 staff.job = "打杂"。 日付date_hiredate =新しいDate(); date_hiredate.setTime(2020年2月29日)。 日付date_birthday =新しいDate(); date_birthday.setTime(1994年8月1日)。 staff.setHiredate(date_hiredate)。 staff.setBirthday(date_birthday)。 staff.setSalary(8900.150)。 staff.setIDCard(1035063)。 System.out.println(staff.toString())。 staff.toString(); } }
抽象スーパークラスは、変更します
パッケージClass3に。 輸入java.util.Date; パブリック 抽象 クラスAbstractTest { 公共の文字列の名前。 公共 int型の年齢; 公共の文字列の仕事。 プライベート 長いidCard。 プライベート ダブル給与; プライベート日の入社日。 //预留重写构造メソッド、 パブリック ロングgetIDCard(){ リターンidCard。 } 公共 ボイド setIDCard(長いidCard){ この .idCard = idCard。 } 公共 ダブルgetSalary(){ 戻り給料。 } 公共 ボイド setSalary(ダブル給料){ この .salary = 給与。 } 公共日getHiredate(){ 戻りHIREDATE。 } 公共 ボイドsetHiredate(日付HIREDATE){ この .hiredate = HIREDATE。 } @Override パブリック文字列のtoString(){ // TODO自動生成方法スタブ 戻り名+ "" +年齢+ "" +ジョブ+ "" + getIDCard()+ "" + getSalary()+ ""getHiredate(); } }
サブクラスでは、上記の親クラスを継承しています
パッケージClass3に。 輸入java.util.Date; パブリック クラス SonClassは拡張AbstractTest { プライベート日の誕生日を。//新增的变量 公共日getBirthday(){ 戻り値の誕生日。 } 公共 ボイドsetBirthday(日の誕生日){ この .birthday = 誕生日。 } @Override パブリック文字列のtoString(){ // TODO自動生成方法スタブ 戻り名+ "" +年齢+ "" +ジョブ+ "" + getIDCard()+ "" + getSalary()+ "" + getHiredate()+ getBirthday( ); } }