出一道看上去几乎不可能实现的题目解决方法
出一道看上去几乎不可能实现的题目
public static void main(String[] args) {
//请在这里写一些代码
System.out.println("aaaa");//使得这里打印的结果是bbbb,而不是aaaa
}
------解决方案--------------------
用ASM直接加载这个类的class文件,直接修改字节码,应该可以。
------解决方案--------------------
System.out.println("aaaa");//使得这里打印的结果是bbbb,而不是aaaa
自己写一个OutputStream 替换掉System.out属性的这个out,覆盖掉println方法,其中只打印bbbb就可以了
------解决方案--------------------
外面加下。
public static void main(String[] args) {
//请在这里写一些代码
System.out.println("aaaa");//使得这里打印的结果是bbbb,而不是aaaa
}
------解决方案--------------------
用ASM直接加载这个类的class文件,直接修改字节码,应该可以。
------解决方案--------------------
System.out.println("aaaa");//使得这里打印的结果是bbbb,而不是aaaa
自己写一个OutputStream 替换掉System.out属性的这个out,覆盖掉println方法,其中只打印bbbb就可以了
------解决方案--------------------
外面加下。
- Java code
public class System{ static class out{ public static void println(String x){ java.lang.System.out.println("bbbb"); } } public static void main(String[] args) { System.out.println("aaaa"); } }
------解决方案--------------------
public static void main(String args[])
{
PrintStream out = null;
try
{
out = new PrintStream("bbbb");
}
catch (FileNotFoundException e)
{
e.printStackTrace();
}
System.setOut(out);
System.out.println("aaaa");
}
------解决方案--------------------
忘了加format这句
public static void main(String args[])
{
System.out.format("bbbb");
PrintStream out = null;
try
{
out = new PrintStream("bbbb");
}
catch (FileNotFoundException e)
{
e.printStackTrace();
}
System.setOut(out );
System.out.println("aaaa");
}
------解决方案--------------------
- Java code
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");