一个代码比较有意思,保存下来。很有深度的讨论,随便发下。
public class Monday {
public static void main(String args[]) {
【place holder】
System.out.println("aaaa");
}
}
问题:在括号内加几行代码,让打印aaaa那行打印出bbbb
方案1:
public class Monday {
public static void main(String args[]) {
try {
String aaaa = "aaaa";
Field field = String.class.getDeclaredField("value");
field.setAccessible(true);
char[] value = (char[]) field.get(aaaa);
Arrays.fill(value, 'b');
} catch (Exception e) {
}
System.out.println("aaaa");
}
}
方案2:
public class Monday {
public static void main(String args[]) {
System.setOut(new PrintStream(System.out) {
public void println(String str) {
super.println("bbb");
}
});
System.out.println("aaa");
}
}
方案1是修改reference内容,方案2是重载
最后
以上就是呆萌钢铁侠最近收集整理的关于一个很有意思的java代码例子的全部内容,更多相关一个很有意思内容请搜索靠谱客的其他文章。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复