亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

java程序,在main函數中new 構造函數怎么理解?

java程序,在main函數中new 構造函數怎么理解?

陳默有言 2016-10-14 20:38:44
package?com.tz.java; import?javax.swing.JFrame; public?class?PlaneJFream?extends?JFrame?{ /* ?*?窗口的初始化 ?*?構造函數 ?*/ public?PlaneJFream(){ //?窗口的標題 this.setTitle("雷霆戰機"); //?設置窗口的大小 this.setSize(640,700); //?顯示窗口 this.setVisible(true); } //?主函數? public?static?void?main(String[]?args)?{ ????????//?此處的函數怎么理解????? new?PlaneJFream(); } }main函數中的 new PlaneJFream() 怎么理解?有點轉不過來彎了,不應該是PlaneJFream pj = new PlaneJFream()嗎?
查看完整描述

6 回答

已采納
?
bbkxm

TA貢獻7條經驗 獲得超1個贊

PlaneJFream pj = new PlaneJFream();

new PlaneJFream()指的是你創建了一個PlaneJFream對象

PlaneJFream pj 指的是你定義了一個PlaneJFream類型的變量指向new PlaneJFream()對象所在的堆空間地址

如果你只想創建一個對象,則不需要PlaneJFream pj?


查看完整回答
反對 回復 2016-10-14
?
三十文

TA貢獻2條經驗 獲得超4個贊

這個地方創建了一個對象,但是并沒有創建引用對象,可以說是一個匿名對象。

對象創建的同時,會調用它的構造方法,如果你在PlaneJFream類的構造方法里輸出語句:System.out.println("hello");

在控制臺是會進行輸出的。

查看完整回答
2 反對 回復 2016-10-14
?
夏Jue

TA貢獻6條經驗 獲得超5個贊

所謂面向對象,new 類名()返回的實例就是一個對象,new?PlaneJFream();返回的就是一個PlaneJFream類的實例,可以 用PlaneJFream 類型的引用去接收這個實例,

即PlaneJFream pj=new?PlaneJFream();

所謂引用,完全可以把它理解為一個指針變量,它指向內存中new出的實例,從而操作它,不必太過于糾結這東西,面向對象拿到對象就好說話了

有了對象,也不一定要去接收,可以直接傳遞,比如用得最多的匿名類:

比如

Frame frame=new Frame();

frame.add(new Label("Label-1..."));

這里給frame添加了一個標簽對象,但是這里就沒有拿到它的引用而直接傳遞,因為如果不需要的話我們一般都會這么做的

查看完整回答
1 反對 回復 2016-10-15
?
慕粉4065503

TA貢獻3條經驗 獲得超1個贊

匿名對象,只使用一次就銷毀

查看完整回答
1 反對 回復 2016-10-15
?
JustWannaHugU

TA貢獻452條經驗 獲得超796個贊

匿名對象么,只使用一次就銷毀

查看完整回答
1 反對 回復 2016-10-14
?
非主流1

TA貢獻2條經驗 獲得超0個贊

創建的匿名對象,因為沒有對應類型的申明變量,使用一次就銷毀
查看完整回答
反對 回復 2016-10-15
  • 6 回答
  • 2 關注
  • 4515 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號