有意思的Java代码
2017-01-08 11:21
399 查看
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对世界各个时区(TimeZone)的通用转换处理方法(转载)
- java-注解annotation
- java-模拟tomcat服务器
- java-用HttpURLConnection发送Http请求.
- java-WEB中的监听器Lisener
- Android IPC进程间通讯机制
- Android Native 绘图方法
- Android java 与 javascript互访(相互调用)的方法例子
- Debian 7.x 安装Oracle JAVA
- springmvc实现url路由功能
- spring boot 配置 druid/** * 配置druid * Created by adam on 4/11/16. */ @Configuration public class D