首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2EE开发 >

菜鸟大神一个有关问题

2013-08-01 
初学者求助大神一个问题请设计一个KString类,让它具备如下特性:1) KString str1 Hello2) KString str

初学者求助大神一个问题
请设计一个KString类,让它具备如下特性:
1) KString str1 = "Hello";
2) KString str2 = str1;
3) str += "world";在执行 
1)之后,str1 的内容是 "Hello";在执行 2)之后,str2 的内容是 "Hello"; 但是str2内部未给"Hello"分配新空间;在执行 3)之后,str2 的内容是 "Helloworld", str1的内容是"Hello"而未改变;
这个怎么解决呢?
[解决办法]
String是final的,不可继承。
1) KString str1 = "Hello";永远非法的
[解决办法]
去找找String 常量池
[解决办法]
这属于C++的题目。
[解决办法]
在不能自由控制内存分配和引用的情况下,要想用Java做到这个非常不容易,建议先熟悉一下Java与C++的区别。C++做这个事情是强项。
[解决办法]
楼主的问题类似于 str1保持原来的hello  str2 变成 helloword吗?
str2和str1引用都一样
str1改变了 str2起始也要跟着变,
所需要做到不一样的话需要用到克隆
[解决办法]
楼主的问题类似于 str1保持原来的hello  str2 变成 helloword吗?
str2和str1引用都一样
str1改变了 str2起始也要跟着变,
所需要做到不一样的话需要用到克隆 
[解决办法]

引用:
请设计一个KString类,让它具备如下特性:
1) KString str1 = "Hello";
2) KString str2 = str1;
3) str += "world";在执行 
1)之后,str1 的内容是 "Hello";在执行 2)之后,str2 的内容是 "Hello"; 但是str2内部未给"Hello"分配新空间;在执行 3)之后,str2 的内容是 "Helloworld", str1的内容是"Hello"而未改变;
这个怎么解决呢?


代码写错了,str变量在哪声明的?
[解决办法]
是内存交换问题吧?

热点排行