1. 程式人生 > >java面向物件1

java面向物件1

  1. java的檔名與類名

    ① Java儲存的檔名必須與類名一致;
    ② 如果檔案中只有一個類,檔名必須與類名一致;
    ③ 一個Java檔案中只能有一個public類;
    ④ 如果檔案中不止一個類,檔名必須與public類名一致;
    ⑤ 如果檔案中不止一個類,而且沒有public類,檔名可與任一類名一致。

  2. 成員變數

    • 成員變數的資料型別可以是基本型別或引用型別
    • 在定義成員變數時可以對其初始化,如果不對其初始化,Java使用預設的對之初始化。而方法中的區域性變數如果不初始化就會報錯。
    • 成員變數作用為範圍為整個類體。
      成員變數預設值
  3. 構造方法

    • 使用new + 構造方法建立一個新的物件
    • 建構函式是定義在java類中的一個用來初始化物件的函式
    • 建構函式與類同名且沒有返回值
    • 當沒有指定建構函式時,編譯器就會為類自動新增形如 類名() {} 的建構函式
public class Person{
    int id;
    int age=20;
    //Person的構造方法,前面連void都不能有
    Person(int _id,int _age){
        id = _id;
        age = _age;
    //普通方法
/* void Person(int _id,int_age){ id = _id; age = _age; } */ } public static void main(String[] args){ //建立物件時用建構函式來初始化物件的成員變數 Person Tom = new Person(1,25); //普通方法 /* Person Tom= new Person(); Tom.Person(1,25); */ //沒有指定建構函式的情況:
Point p =new Point(); } } class Point{ int x; int y; //系統預設新增構造方法 /*Point (){};*/ }

4.約定俗稱的命名規則

  • 類名的首字母大寫
  • 變數名和方法名首字母小寫
  • 運用駝峰標識 如類名檔名HelloWorld,方法名catchMouse

5 練習

 定義一個“點”(Point)類用來表示三維空間中的點(有三個座標),要求如下:
① 可以生成具有特定座標的點物件。
② 提供可以設定三個座標的方法。
③ 提供可以計算該點距原點距離平方的方法、
④ 程式設計驗證上述3條。
class Point {
    double x,y,z;

    Point (double _x, double _y, double _z) {
            x = _x;
            y = _y;
            z = _z;
    }
    //設定三個座標
    void setX(double _x){
        x = _x;
    }
    void setY(double _y){
        y = _y;
    }
    void setZ(double _z){
        z = _z;
    }
    //計算距離      
    double getDistance(Point p){
        return (x-p.x)*(x-p.x)+(y-p.y)*(y-p.y)+(z-p.z)*(z-p.z);
    }
}

public class TestPoint{
    public static void main(String[] args){
        Point p = new Point(1.0,2.0,3.0);
        Point p0 = new Point(0.0,0.0,0.0);
        System.out.println(p.getDistance(p0));

        p.setX(5.0);
        System.out.println(p.getDistance(new Point(1.0,1.0,1.0)));
    }
}