class triangle
{
int a;
int b;
}
class triangle
{
public static void main(String【】 arge)
{
triangle s=new triangle();
}
}
這句 triangle s=new triangle()是什么意思,new不是動態分配嗎,動態分配在c語言是回傳地址吧,這里s是個triangle型別變數吧,怎么可以接收地址?
uj5u.com熱心網友回復:
你可以把s理解為triangle型別的指標,指標自然可以接收地址了。uj5u.com熱心網友回復:
一樓說得沒錯,你就當它是指標吧不過,Java類似C,但它不畢竟不是C。Java 沒有提供記憶體地址訪問,所以你也得不到它的地址,也無法進行地址運算,所以不可能有象C中那么多指標值、指標指向的記憶體、指標的指標、指標的指標取記憶體值之類的功能。
uj5u.com熱心網友回復:
new 就是新分配一塊記憶體這個變數。在C里面就是指標,指向這個位置。
JAVA里沒有指標。讀取也是從這個位置開始讀取資料的。
uj5u.com熱心網友回復:
java里沒有指標的概念。new的操作其實是在jvm的伊甸區里生成一個物件。物件的生存期不需要你去管理,jvm自己會去管理,比如垃圾收集器會按照演算法。。。uj5u.com熱心網友回復:
java和c完全不一樣啊,你要把它當物件看轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/14370.html
標籤:非技術區
