Java基礎---オブジェクト向け思想、クラスとオブジェクト、構造方法、パッケージ

27353 ワード

1.対象思想
例洗濯:
プロセス向け:服を脱ぐ-->鉢に置く->洗剤を入れる->水を加える->浸す->服を洗う->ねじる->干すオブジェクト向け:服を脱ぐ->洗濯機に置く->ボタン->干す違い:プロセス向け:手順を強調します.対象に向かう:対象を強調し、ここの対象は洗濯機です.
2.クラスとオブジェクト
クラスとは、関連する属性と動作のセットです.何が対象なのかは物事の具体的な体現である.クラスとオブジェクトの関係クラスは、物事の記述であり、抽象的である.オブジェクトは物事の例であり、具体的である.クラスはオブジェクトのテンプレートであり、オブジェクトはクラスのエンティティです.
例:学生類:学号氏名性別年齢対象:張三同級生王麻子同級生
3.クラスの定義、オブジェクトの使用
3.1クラスの定義形式:
public class ClassName {
  //    
  //    
}

例:学生クラスを作成する
public class Student {
   //      
   String name;//    
   int age;//  
   
   //    
   //     
   publicvoid study() {
   System.out.println("    ,    ");
  }
  //     
  publicvoid sleep() {
    System.out.println("  ");
  }
}

3.2オブジェクトの使用によるオブジェクトの作成
	       = new   ();

オブジェクト・アクセス・クラスのメンバーを使用するには、次の手順に従います.
	   ..    ()

例:
public class Demo {
  public static void main(String[] args) {
    //      :       = new   ();
    Student s = new Student();
    s.name = "   ";//    
    s.age = 18;//    
    //        
    System.out.println("  :"+s.name); //   
    System.out.println("  :"+s.age); //18
    System.out.println("‐‐‐‐‐‐‐‐‐‐");
    //      
    s.study(); // "    ,    "
    s.sleep(); // "  "
  }
}

4.練習:クラスとオブジェクト
Phoneクラス
public class Phone {
  //     
  String brand; //  
  int price; //  
  String color; //  
  //     
  //   
  public void call(String name) {
    System.out.println(" "+name+"   ");
  }
  //   
  public void sendMessage() {
    System.out.println("   ");
  }
}

テストクラス(main)
public class Test02Phone {
  public static void main(String[] args) {
    //    
    Phone p = new Phone();
    //       
    //    ,             "   "
    System.out.println("  :"+p.brand);//null
    System.out.println("  :"+p.price);//0
    System.out.println("  :"+p.color);//null
    System.out.println("‐‐‐‐‐‐‐‐‐‐‐‐");
     //       
    p.brand = "iphone 8";
    p.price = 4999;
    p.color = "   ";
    //         
    System.out.println("  :"+p.brand);//iphone 8
    System.out.println("  :"+p.price);//4999
    System.out.println("  :"+p.color);/   
    System.out.println("‐‐‐‐‐‐‐‐‐‐‐‐");
    //      
    p.call("  ");//      
    p.sendMessage();//   
  }
}

5.パッケージ
1.privateキーワードを使用してメンバー変数を修飾する2.アクセスが必要なメンバー変数に対して、対応するgetXxxメソッド、setXxxメソッドprivateのペアの意味を提供します.
  • privateは、最小権限を表す権限修飾子です.
  • は、メンバー変数およびメンバーメソッドを修飾することができる.
  • privateによって修飾されたメンバー変数とメンバーメソッドは、このクラスでのみアクセスできます.

  • privateの使用フォーマット
    private

    例:
    public class Student {
      private String name;
      private int age;
    }
    

    getXxxメソッド/setXxxメソッド、メンバー変数にアクセスできます
    public class Student {
      private String name;
      private int age;
    public void setName(String name) {
        //name = name;
        this.name = name;
      }
      public String getName() {
        return name;
      }
      public void setAge(int age) {
        //age = age;
        this.age = age;
      }
      public int getAge() {
        return age;
      }
    }
    
    public class Test02Phone {
      public static void main(String[] args) {
        //    
        Student s = new Student ();
        s.setName= "  ";
        s.setAge = 18;
        //         
        System.out.println("  :"+s.getName);//  
        System.out.println("  :"+s.getAge);//18
      }
    }
    

    6.構造方法
    オブジェクトが作成されると、構築方法はオブジェクトを初期化し、オブジェクトのメンバー変数に初期値を付与します.
    構築方法の定義形式
             (    ){
    //        
    }
    
    public class Student {
      private String name;
      private int age;
      //        
      public Student() {}
      //        
      public Student(String name,int age) {
        this.name = name;
        this.age = age;
      }
    }
    

    構築方法をカスタマイズするかどうかにかかわらず、すべてのクラスには構築方法があります.Javaは自動的にパラメータなし構築方法を提供し、自分で構築方法を定義すると、Javaが自動的に提供するデフォルトのパラメータなし構築方法は失効します.
    7.完全なコード
    学生クラス
    public class Student {
      //    
      private String name;
      private int age;
      //    
      public Student() {}
      public Student(String name,int age) {
        this.name = name;
        this.age = age;
      }
      //    
      publicvoid setName(String name) {
        this.name = name;
      }
      public String getName() {
        return name;
      }
      publicvoid setAge(int age) {
        this.age = age;
      }
      publicint getAge() {
        return age;
      }
    }
    

    テストクラス(main)
    public class TestStudent {
      public static void main(String[] args) {
        //      
        Student s= new Student();
        s.setName("  ");
        s.setAge(18);
        System.out.println(s.getName()+"‐‐‐"+s.getAge());
        //      
        Student s2= new Student("   ",18);
        System.out.println(s2.getName()+"‐‐‐"+s2.getAge());
      }
    }