1 import java.awt.Point; 2 class rectangle 3 { int x1=0; 4 int y1=0; 5 int x2=0; 6 int y2=0; 7 8 rectangle point(int x,int y,int z,int w) 9 {x1= x; 10 y1= y; 11 x2= z; 12 y2= w; 13 return this; 14 } 15 16 public static void main(String[] args) 17 18 { rectangle experiment = new rectangle(); 19 experiment.point(1,2,3,4); 20 System.out.print(x1+" "+y1+" "+x2+" "+y2); 21 22 } 23 24 }
注意: 上述代碼運行時:報錯!無法從靜態上下文中引用非靜態 變量,原因是:靜態主方法只能訪問靜態變量;如果要訪問動態變量,必須將動態變量實例化。
import java.awt.Point; class rectangle { int x1=0; int y1=0; int x2=0; int y2=0; rectangle point(int x,int y,int z,int w) {x1= x; y1= y; x2= z; y2= w; return this; } public static void main(String[] args) { rectangle experiment = new rectangle(); experiment.point(1,2,3,4); System.out.print(experiment.x1+" "+experiment.y1+" "+experiment.x2+" "+experiment.y2); } }
以上程序運行正確。
說白了,就是在JAVA程序中,除了主靜態方法以及類方法之外,其他在該類下定義的實例變量、實例方法,在主類方法中調用時必須要將其實例化,說白了就是要加上對象的引用:
比如: 某個對象.變量
某個對象.方法
1 import java.awt.Point; 2 class rectangle 3 { int x1=0; 4 int y1=0; 5 int x2=0; 6 int y2=0; 7 8 rectangle point(int x,int y,int z,int w) 9 {x1= x; 10 y1= y; 11 x2= z; 12 y2= w; 13 return this; 14 } 15 void printrectangle() 16 { System.out.print(x1+" "+y1+" "+x2+" "+y2); 17 } 18 public static void main(String[] args) 19 20 { rectangle experiment = new rectangle(); 21 experiment.point(1,2,3,4); 22 experiment.printrectangle(); 23 24 } 25 26 }
以上程序也可以實現相同的功能。
