[問題] 有關修改程式碼

看板java作者 (Sac)時間16年前 (2009/05/28 23:29), 編輯推噓3(303)
留言6則, 5人參與, 最新討論串1/3 (看更多)
麻煩一下各位先進QQ 以下是我的問題 __________________________________________________ import java.io.* ; public class main { public static void main(String[] args)throws IOException { test t =new test(); t.setname(); System.out.println(t.name); } } __________________________________________________ public class test { String name="test"; public void setname() { name = returnname(); } public String returnname() { name = "abc"; return name; } } ___________________________________________________ 我想做的事情是 想想要在class main的程式碼執行後 可以修改到class test中的name的值 意思是我想看到class test 中的name = "test"; 可以變成name = "abc"; 我知道上面那兩段程式碼,無法做到 他頂多只能讓我去輸出t.name得到abc這個結果 可是無法改變程式碼內的數值 希望各位先進,可以給我一個方向,讓我去解決這個問題 如果我想做的是不可能的事情,請各位先進跟提點一下 謝謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 163.15.172.130

05/29 01:01, , 1F
那在 t.setname 之前先加一個 System.out.println(t.name);
05/29 01:01, 1F

05/29 01:02, , 2F
test 完全不改的話不可能...
05/29 01:02, 2F

05/29 01:16, , 3F
改 bytecode 算嗎@@?
05/29 01:16, 3F

05/29 02:38, , 4F
我知道這兩個程式碼做不到
05/29 02:38, 4F

05/29 09:57, , 5F
try reflection
05/29 09:57, 5F

05/29 10:00, , 6F
05/29 10:00, 6F
文章代碼(AID): #1A7gtYTQ (java)
文章代碼(AID): #1A7gtYTQ (java)