A. java給對象可以賦值給對象嗎
對象是引用類型的,所以如果你把一個對象賦值給另一個變數,它實際上只是把內存地址賦值了,這就比如你知道xxx家的地址,然後你告訴了另一個人,這個人也知道了這個地址,但是xxx的家你並沒有直接拿給另一個人,所以顯而易見,你去xxx家拿東西,另一個人去了會發現少了,如果像你說的改成直接復制一份給另一個人的話,那麼你需要把xxx的家重新蓋一套,東西都一樣,然後搬過去交給另一個人,顯然這不可能那麼java是面向對象的,它是完全符合面向對象的觀點的,正因為你不可能重新蓋一套房給人家一樣,java也是這樣做的
B. java中怎麼給對象賦值
通常用String ss="asasasa";就可以了,用String str=new String ("men"); 比較麻煩,因為它實際創建了兩個字回符串答,意思就是用「men」這個字元串來初始化str.String str=new String ();
他只是創建了一個字元串對象,可以在後續給他賦值初始化。也可以用他的引用來調用一些String類的方法。
C. java對象賦值
生成了一個各屬性與賦值對象相同的新對象
後半句是錯的。
D. Java中請問將一個對象賦值給另一個同類對象,這兩個對象是否指向同一堆內存
對象是引用類型的,所以如果你把一個對象賦值給另一個變數,它實際上只是把內存地址賦值了。
也就是說,如果你的對象都是同一地址,那麼改變該地址的值,另外一個同地址的對象也會改變。
比如
List a = new ArrayList(); a.add("a");List b=a;b.add("b");System.out.println(a);//output:[a,b]
這里邊的a、b就是同一地址;
但是有賦值的則不會如此:
String a="a";
String b=a;
b="b";
System.out.println(a);//output:a
這里邊b的引用雖然指向了a但是後來的賦值讓它指向了新的地址,改變的不是原來地址的值;所以a沒有改變。
E. 在java中定義一個數組對象怎麼賦值
new Shuzu(new char[]{'我'});new Shuzu(new char[]{'老'})); ————相當於ss[0].sz[0]={'我'};ss[1].sz[0]={'老'};
就在這里,這里你用了兩次new,也就意味著,你生成了兩個不同的Shuzu類的對象出來,分別的char[]{'我'}和new char[]{'老'},所以,當你在之後 System.out的時候,讀到ss[0].sz[1]和ss[1].sz[1]時,其實這兩個變數里是沒有值的,
F. 怎樣將java對象直接賦值給scala對象
怎樣將java對象直接賦值給scala對象
Java創建對象並賦值,示例如下
Interger i = new Interger(1);
String s = 「已經被創建了";
創建對象可以指定構造函數裡面的初始化變數,也可以像string對象一樣,直接用雙引號生成對象,並且是不可以改變的。