6 回答

TA貢獻7條經驗 獲得超1個贊
PlaneJFream pj = new PlaneJFream();
new PlaneJFream()指的是你創建了一個PlaneJFream對象
PlaneJFream pj 指的是你定義了一個PlaneJFream類型的變量指向new PlaneJFream()對象所在的堆空間地址
如果你只想創建一個對象,則不需要PlaneJFream pj?

TA貢獻2條經驗 獲得超4個贊
這個地方創建了一個對象,但是并沒有創建引用對象,可以說是一個匿名對象。
對象創建的同時,會調用它的構造方法,如果你在PlaneJFream類的構造方法里輸出語句:System.out.println("hello");
在控制臺是會進行輸出的。

TA貢獻6條經驗 獲得超5個贊
所謂面向對象,new 類名()返回的實例就是一個對象,new?PlaneJFream();返回的就是一個PlaneJFream類的實例,可以 用PlaneJFream 類型的引用去接收這個實例,
即PlaneJFream pj=new?PlaneJFream();
所謂引用,完全可以把它理解為一個指針變量,它指向內存中new出的實例,從而操作它,不必太過于糾結這東西,面向對象拿到對象就好說話了
有了對象,也不一定要去接收,可以直接傳遞,比如用得最多的匿名類:
比如
Frame frame=new Frame();
frame.add(new Label("Label-1..."));
這里給frame添加了一個標簽對象,但是這里就沒有拿到它的引用而直接傳遞,因為如果不需要的話我們一般都會這么做的
添加回答
舉報