在Java SE中,我将一个类实例化成一个线程,我还想通过这个线程调用这个类里的其他方法,怎样实现?
展开全部
线程start之后,会调用线程类的run方法,如果你还想要调用其它方法的话,那么只能将其它方法写进run方法中,这样就可以执行了。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
给你一段例子代码:
//主类
public class MainApp {
public MainApp() {
new MyThread(this).start();
}
public synchronized void showInfo(String msg){
System.out.println(msg);
}
public static void main(String[] args) {
new MainApp();
}
}
//线程类
public class MyThread extends Thread {
private MainApp mainApp;
public MyThread(MainApp mainApp) {
this.mainApp=mainApp;
}
public void run() {
while(true){
mainApp.showInfo("线程内部调用外部方法!");
try{
Thread.sleep(500);
}
catch (Exception e) {
e.printStackTrace();
}
}
}
}
自己测试下。
//主类
public class MainApp {
public MainApp() {
new MyThread(this).start();
}
public synchronized void showInfo(String msg){
System.out.println(msg);
}
public static void main(String[] args) {
new MainApp();
}
}
//线程类
public class MyThread extends Thread {
private MainApp mainApp;
public MyThread(MainApp mainApp) {
this.mainApp=mainApp;
}
public void run() {
while(true){
mainApp.showInfo("线程内部调用外部方法!");
try{
Thread.sleep(500);
}
catch (Exception e) {
e.printStackTrace();
}
}
}
}
自己测试下。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
直接调用就可以了 不过要考虑线程同步
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |