物件的建立與使用
阿新 • • 發佈:2018-11-26
物件的建立
1:必須使用new作為關鍵字建立物件。
2:使用物件引用.成員變數或來引用物件的成員變數。
3:使用物件引用.方法(引數列表來呼叫物件的方法)。
4:同一類的每個物件由不同的成員變數儲存空間。
5:同一類的每個物件共享該類的方法。
6:非靜態方法是針對每個物件進行呼叫。(方法前無static時,呼叫該方法時一定要先new一個物件才能呼叫)
例項1:
public class CreateObject{ public CreateObject(){ //構造方法 System.out.println("建立物件"); } public static void main(String args[]){ //主方法 new CreateObject(); //構建物件 } } 執行之後,控制檯列印 建立物件(建立物件的同時自動呼叫構造方法中的程式碼。)
例項2:
public class TransferProperty{ int i = 47; //定義成員變數。 public void call(){ //定義成員方法。 System.out.println("呼叫call()方法") for(i = 0;i<3;i++){ System.out.print(i + " "); if(i == 2){ System.out.println("\n"); } } } public TransferProperty(){ //定義構造方法。 } public static void main(String[] args){ TransferProperty t1 = new TransferProperty(); //建立一個物件。 TransferProperty t2 = new TransferProperty(); //建立另一個物件。 t2.i = 60; 將類成員變數賦值為60; //使用第一個物件呼叫類成員變數- System.out.println("第一個例項物件呼叫變數 i 的結果:" + t1.i++); t1.call(); 使用第一個物件呼叫類成員方法。 //使用第二個物件除錯類成員變數。 System.out,println("第二個例項物件呼叫變數 i 的結果:" + t2.i); t2.call(); 使用第二個物件呼叫類成員方法。 } } 輸出結果: 第一個例項物件呼叫變數 i 的結果:47 呼叫call()方法 0 1 2 第二個例項物件呼叫變數 i 的結果:60 呼叫call()方法 0 1 2
例項3
class Point{ //定義一個點類 private double x; //兩個成員變數:x,y private double y; Point(double x1, double y1){ //構造方法,把x1,y1賦給x,y x = x1; y = y1; } public double getX(){ return x ;} public double getY(){ return y ;} public void setX(double i){ x = i;} public void setY(double i){ y = i;} } class circle{ private Point o; //複用,圓心是一個點,直接使用點物件 private double radius; //半徑 Circle(Point p, double r){ o = p; radius = r; } Circle(double r){ //過載 o = new Point(0.0 0.0); radius = r; } boolean contains(Point p){ double x = p.getX() - o.getX(); double y = p.getY() - o.getY(); if(x*x + y*y > radius * radius) return false; esle return ture; } public void setO( double x, double y){ o.setX(x); o.setY(y); } public Point getO(){ return o ; } //拿到圓心O的座標。 public double getRadius() { return radius ; } public void setRadius( double r ) { radius = r ;} public doule area() { return 3.14* radius*radius; } }