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

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

Java創建對象中;小白低級的疑惑;望各位大佬多多指教!

Java創建對象中;小白低級的疑惑;望各位大佬多多指教!

明月笑刀無情 2018-12-07 08:21:53
Person p = new Person(); new Person();這句話中new Person;是在創建對象;()只是在創建對象時附帶的調用構造;這樣理解對嗎;對象是真實存在的;話雖然那么說new了一個對象;那是實例化的一個過程;過程完了之后那個對象的實例又在哪呢; Person p 是申明一個引用;引用就是個指針;我隨意申明個指針指向對象也可以的.可是不行;為什么? Person 準確的說是自己創的抽象的數據類型;而不是抽象類;對吧!
查看完整描述

10 回答

?
不負相思意

TA貢獻1777條經驗 獲得超10個贊

你問題問的很混亂...

  1. Person 準確的說是自己創的抽象的數據類型;而不是抽象類.這句話前面是對的;Person是你自定義的類,類可以看作一種數據類型;但后面這句,你扯出了另外一個概念(可能你是無意的),抽象類是不能實例化的(不能new)。
  2. Person p 是申明一個引用;引用就是個指針;我隨意申明個指針指向對象也可以的.這句話也沒錯。可是不行,為什么? 因為p聲明的是Person類型,只限于指向Person及其子孫類。就像int i= 5;可以i=1;i=2;但不可以i="hello world".
  3. new Person(),這個地方不知道你看什么書看來的,我是沒見過new Person和()分開說的。這個地方就是對象正式開始實例化了。這句話執行完就意味著內存的某個地方有一個實實在在的Person對象(對象就是實例),它有具體的名字、年齡...這些屬性,也有say“你好”...這些方法(賦予它姓名、年齡、say“你好”等等這些都是 new 構造函數的作用,但賦予它姓名屬性不代表賦予了它姓名,有可能這個階段還沒有給它起具體的名字)。
查看完整回答
反對 回復 2018-12-16
?
LEATH

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

通過調用構造函數來創建一個對象..

你可以把new當成申請一塊內存空間.這時這個內存是啥也么有的.然后調用構造函數來初始化這塊內存

查看完整回答
反對 回復 2018-12-16
?
MYYA

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

構造函數初始化是不是在描述對象;構造對象;讓其體現出來

查看完整回答
反對 回復 2018-12-16
?
慕無忌1623718

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

@小梁丶: 看不懂.就是弄一塊內存.然后將這個內存初始化為對應的類型.

查看完整回答
反對 回復 2018-12-16
?
達令說

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

@吳瑞祥: 就是調有參構造是創建一個對象時就用屬性描述對象;而調用無參構造是創建一個對象;之后在用屬性描述對象;

查看完整回答
反對 回復 2018-12-16
?
偶然的你

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

@吳瑞祥: 那塊內存就是存儲對象的屬性是嗎?

查看完整回答
反對 回復 2018-12-16
?
四季花海

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

@小梁丶: 這塊內存怎么用學問就大了.我是不會的.

查看完整回答
反對 回復 2018-12-16
?
Qyouu

TA貢獻1786條經驗 獲得超11個贊

@吳瑞祥: 按照剛剛接觸對象;可以那樣理解嗎?

查看完整回答
反對 回復 2018-12-16
?
繁花如伊

TA貢獻2012條經驗 獲得超12個贊

@小梁丶: 剛入你要學的不是這個..是語法.

你先把語法學會了.再來想這些.

比如:基類的泛型靜態成員.在不同的泛型實現中.是不是不同的成員?

想學內存中的具體實現.就去從C/c++開始學.

查看完整回答
反對 回復 2018-12-16
?
回首憶惘然

TA貢獻1847條經驗 獲得超11個贊

@小梁丶: 對象的屬性會放在對象的地址空間里,但方法,靜態變量這些會放到類的公共空間里,所有這個類的實例對象公用

查看完整回答
反對 回復 2018-12-16
  • 10 回答
  • 0 關注
  • 657 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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