Javaのクラスの定義と初期化


目次
  • クラスの定義
  • クラスの定義フォーマット
  • クラスのメンバー
  • フィールド/属性/メンバー変数
  • 方法
  • クラスのインスタンス化
  • クラスの初期化
  • クラスの定義
    クラスの定義形式
    //   
    class ClassName{
         
    	field ;//    /  
    	method;//  
    }
    
    

    classはクラスを定義するキーワードであり、ClassNameはクラスの名前であり、{}はクラスの主体である.
    例:
    class Person{
         
    	public String name ; //    
    	public int age;
    	public void eat(){
          //   
    		System.out.println("  !");
    	}
    }
    

    クラスのメンバー
    クラスのメンバーには、フィールド(メンバー変数)、メソッド、コードブロック、内部クラス、インタフェース...
    フィールド/属性/メンバー変数
    クラスでは、メソッド外で定義された変数を、フィールド/属性/メンバー変数と呼びます.
    class Person{
         
    	public String name ; //    
    	public int age;
    }
    

    私たちが使うとき、使います.オブジェクトのアトリビュートにアクセスするには、読み取りまたは書き込みができます.オブジェクト内のフィールドに初期値がない場合、デフォルトは0の変形です.
    を選択します.
    0の値
    byte/short/int
    0
    long
    0L
    float
    0.0F
    double
    0.0
    boolean
    false
    char
    0 x 0000対応文字
    参照タイプ
    null
    方法
    オブジェクトの動作を記述するには、次のようにします.
    class Person{
         
    	public String name ; //    
    	public int age;
    	public void eat(){
          //   
    		System.out.println("  !");
    	}
    }
    

    クラスのインスタンス化
    クラスのインスタンス化は、クラスを定義すると、intと同様に、独自に定義したタイプにすぎず、使用できます.これらのクラスでオブジェクトを定義する場合、クラスのインスタンス化と呼ばれます.newキーワードでオブジェクトをインスタンス化します.例:
    public class Teacher {
         
        public String name;
        public int age;
        public void     () {
         
            //             
            // name       ,   name   
            System.out.printf("   %s,    %d  ", name, age);    
        }
    }
    
    public class TeacherTest {
         
        public static void main(String[] args) {
         
            //     ,     a   ,        
            Teacher a = new Teacher();
            //    a   ,            
            a.name = "aa";
            a.age = 35;
            //    a   ,          
            a.    ();
            //         
            Teacher b = new Teacher();
            b.name = "bb";
            b.age = 33;       
            b.    ();    
            Teacher c=new Teacher();
            c.name="ccc";
            c.age=18;
            c.    ();
        }
    }
    
    

    注:newキーワードは、オブジェクトインスタンスを作成するために使用されます.同じクラスで複数のオブジェクトを作成できます.
    クラスとオブジェクトの関係は,クラスがテンプレートであり,1つのテンプレートが使用されない場合はどこに置かれ,使用される場合は必要なものを量産することができると理解できる.
    また、引用を用いて理解することもできます.例えば、上題:newのTeacherオブジェクトは、参照aをオブジェクトに指し、参照によってオブジェクトにアクセスします.
    クラスの初期化
    インスタンスメンバーは初期化されておらず、デフォルト値は対応する「0」値であり、初期化時に初期化を定義し、構築コードブロックの初期化のレベルと同じであり、誰が先に実行するか、構築方法は、位置に関係なく、常に第1クラス(定義初期化OR構築コードブロック)が実行された後に実行される.