java调用另一个类,然后怎样强制结束掉另一个类呢

一个类中调用了另一个JFrame的子类,那个类有一个窗口,怎样可以强制结束这个窗口?
可能我没说明白,具体是:

A类中调用了B类:
B.main(new String[]{null});

现在由于B没有结束,所以A也一直没有结束,A怎样来强制结束B呢,谢谢了!

你是想使用多线程吧,就是在做一件事的同时要求电脑做另一件事。比如在不断重画窗口的同时需要监测用户的操作(总不能老是用死循环来做!^^)。
如果单纯使用单线程你这个问题还真不好完美解决!不过多线程的话就简单多了!

比如这样

//JFrame子类
class TestFrame extends JFrame{
}

//定义线程类
class JFrameThread extends Thread {
TestFrame test;

setTest(TestFrame test){
this.test = test;
}

//重写run方法,这里用的是休眠5秒钟将窗口的可见设置为false,你可以加入你想要加入的判断方式。
@Override
public void run() {
this.sleep(5000);
test.setVisible(false);
}
}

public static void main(String args[]){
//建立JFrame子类
TestFrame test = new TestFrame();

//设置显示
test.setVisible(true);

//建立新线程,并将JFrame子类传递过去。
JFrameThread jThread = new JFrameThread();
jThread.setTest(test);

//执行线程
jThread.start();
}

没有实际测试,家里机器手头没装java。应该差不多,没导入包,自己导入下吧。基本上思路就是这样了!
温馨提示:内容为网友见解,仅供参考
第1个回答  2009-02-19
可以这样
比如new newFrame();
oldFrame.dispose();
这样就可以了,呵呵!!你看看能行不?

java调用另一个类,然后怎样强制结束掉另一个类呢
你是想使用多线程吧,就是在做一件事的同时要求电脑做另一件事。比如在不断重画窗口的同时需要监测用户的操作(总不能老是用死循环来做!^^)。如果单纯使用单线程你这个问题还真不好完美解决!不过多线程的话就简单多了!比如这样 \/\/JFrame子类 class TestFrame extends JFrame{ } \/\/定义线程类...

java 一个类调用另一个类的方法 怎样控制另一个类的方法执行完再继续执...
\/\/method reco\/\/1.实例化登陆窗口对象JPasswordFieldDemo JP=new JPasswordFieldDemo();\/\/构造是不要立即显示窗体\/\/2.注册事件JButton loginBtn=JP.getLoginButton();\/\/简单封装下,当然可以粗糙些,类似 JP.reader_id\/\/注册一个listenerloginBtn.addActionListener(new ActionListener(){public void act...

如何在一个项目中调用另一个项目的类?
在Java中在一个项目中引用另一个项目中的类,一般可以使用以下三种方式:1. 把外部项目的jar包导入到自己的项目中。方法是在自己的项目中引入外部项目的jar文件,并且在自己的代码中使用import语句导入外部项目的类。2. 在自己的项目中设置外部项目的源码路径。将外部项目中的源码拷贝到自己的项目中,然...

java调用两个不同的方法怎么办?
1、java是强匹配的,调用方法,对应的参数必须要有值,如果不是必须传的,意思是你可能不需要用的,可以传null 2、或者改造原有的方法参数,把多余的参数去掉 3、或者另外写一个方法,少参数的,然后该方法内部,调用原来的方法 4、代码截图如下:5、看代码,13行的,就相当于调用少一个参数的 ...

java怎么调用另一个类的方法?
Java中的一个类怎么调用另一个类中的方法1、java类有两种方法一种是类方法就是用static修饰的,一种是实例方法,就是没有static修饰的方法。类方法可以同时类名.方法名的方式调用。而实例方法必须先生存类的实例在通过实例.方法名的方式调用。2、如果有访问权限的话,可以调用该类的静态方法(不同包...

我有两个java工程,我如何让一个工程运行结束后马上运行两外一个工程
第一种,使用JAVA本身。你只需要在你的抽取数据的结尾处增加这么一句 Runtime.getRuntime().exec("你的操作系统可执行文件的绝对路径");我查了下API,这个方法是新建一个进程,进程执行的是你指定的内容,如果你的操作系统是WINDOWS,那么推荐你将第2个工程执行写成一个.bat批处理文件,linux下写成...

java中一个类想调用另一个类的变量,必须到方法里面吗,直接在类里面能不...
java 不能在类中初始化引用,所以不能直接在类中new一个对象出来,要使用其他类的变量,必须在自己的类的方法中先创建被引用类的实例,通过实例来引用该类的变量,但是,如果被引用的类的变量是静态的,则可以通过如下指令引用:类名.变量 来直接引用这个变量。

java一个类怎么调用另外一个类的主方法
1、与一般调用没什么差别,直接new 出来另一个类的对象,调用方法即可。B里面代码 public class B {public static void main (String args[]) {System.out.println("this is B");} } A里面代码 public static void main(String args[]){ B b=new B(); b.main(args);}运行A效果:...

java 中对输入输出流类型重复调用,只对最后一次调用进行关闭,之前的调 ...
连接池负责管理连接 比如说保证给程序的是一个可用连接等等 一般情况下上层流关闭的同时也会将下层流关闭 比如说你在InputStream上套一个缓冲流 那么你将缓冲流关闭了 InputStream同时也会关闭的 你如果套了好几个的话 那么只要关闭一个 其他所有流都没办法使用了 因为它们作为基本的流已经关闭了 ...

java两个类相互调用的问题
可以这样,在A,B类中分别设一个静态变量 可以是 boolean行的,当A调用b 的时候 把B类得这个变量改了,然后再B的方法中,依照这个变量来决定是否还调用A的方法 同理可以在B调用A的时候 修改A的变量,A会依照这个变量来决定是否还调用B 这样达到,A调完B 就不会有B 再去A ,B 调完A 之后A...

相似回答
大家正在搜