可以的,我說說大概思路,很簡單,你自己具體實現吧,把代碼寫給你沒意義的:
成都創(chuàng)新互聯公司是一家專業(yè)提供惠山企業(yè)網站建設,專注與成都做網站、成都網站設計、成都外貿網站建設、H5場景定制、小程序制作等業(yè)務。10年已為惠山眾多企業(yè)、政府機構等服務。創(chuàng)新互聯專業(yè)網站建設公司優(yōu)惠進行中。
1.將你這段字符串輸出到一個文件里,用Java類文件的方式命名。
2.調用外部javac命令將該文件編譯。
3.用類加載器(ClassLoad)動態(tài)加載新的class文件并用Class.forName()注冊該類,然后就可以正常使用了。
上面的每一步都能在baidu中找到實現方法,自己發(fā)揮吧。
首先你可以使用輸入輸出流(或者你說的可能是要用反射得到程序結果來解析)解析做出*.Java文件。
然后可以使用runtime調用Dos下的java編譯命令編譯取得class文件。
然后使用classloader,反射等組合執(zhí)行生成的class文件。
效果圖
參考代碼
import?java.awt.*;
import?java.awt.event.*;
import?javax.swing.*;
public?class?MoveTextFrame?extends?JFrame?{
JLabel?jl;//文字標簽
int?speed=2;//移動速度
public?MoveTextFrame()?{
jl?=?new?JLabel("文字動畫");
jl.setForeground(Color.RED);
add(jl);
setSize(380,?100);//窗口大小
setLocationRelativeTo(null);//窗口居中
setResizable(false);
setDefaultCloseOperation(EXIT_ON_CLOSE);
setVisible(true);
//設置定時器,?每隔25毫秒,改變一次文字標簽的位置
Timer?t?=?new?Timer(25,?new?ActionListener()?{
public?void?actionPerformed(ActionEvent?e)?{
int?x?=?jl.getX()+speed;//計算移動后的位置
if(x=390){//如果超過就指定像素,就重新從左邊開水移動
x=-30;
}
jl.setLocation(x,?jl.getY());//更新位置
//repaint();
}
});
t.start();
}
public?static?void?main(String[]?args)?{
new?MoveTextFrame();
}
}