为了账号安全,请及时绑定邮箱和手机立即绑定

无法解析 Java 中的方法“start()”实现 Runnable

无法解析 Java 中的方法“start()”实现 Runnable

心有法竹 2021-12-01 17:10:03
我想交替运行两个线程来写下字母表。不知道我在代码中写错了什么,但是 IDE 无法解析 .start()-Method。搜索了很多,但找不到我的问题的答案。我感谢每一个想法。public class ABCThread_2 implements Runnable{    private boolean issmall;    private boolean istall;    public ABCThread_2(boolean istall, boolean issmall)    {        this.istall = istall;        this.issmall = issmall;    }    public void run()    {        if(issmall)        {            for (char c = 'a'; c <= 'z'; c++)            {                try                {                    Thread.sleep(250);                }                catch (InterruptedException e)                {                }                System.out.print(c);            }        }        else if(istall)        {            for (char c = 'A'; c <= 'Z'; c++)            {                try                {                    Thread.sleep(250);                }                catch(InterruptedException e)                {                }                System.out.print(c);            }        }    }    public static void main(String [] args)    {        ABCThread_2 th1 = new ABCThread_2(false, true);        ABCThread_2 th2 = new ABCThread_2(true, false);        th1.start();        th2.start();    }}
查看完整描述

2 回答

?
慕森卡

TA贡献1806条经验 获得超8个赞

Runnable没有start方法(ABCThread_2会继承)。你肯定是想打电话Thread.start。在这种情况下,使用您的Runnables创建 Thread 实例:


public static void main(String[] args) {

    Thread th1 = new Thread(new ABCThread_2(false, true));

    Thread th2 = new Thread(new ABCThread_2(true, false));

    th1.start();

    th2.start();

}


查看完整回答
反对 回复 2021-12-01
?
慕雪6442864

TA贡献1812条经验 获得超5个赞

Runnable没有start方法。


你很困惑Runnable和Threads。Threads 接受 a Runnable,并在新线程中调用它。


您需要Thread明确地创建一个新的:


// Create your Runnable

Runnable runnable = new ABCThread_2(false, true);


// Then give it to a new instance of a Thread to run

Thread th1 = new Thread(runnable);


// And now you can start the Thread

th1.start();

虽然你在这里的命名混淆了事情。ABCThread_2真的应该重命名为描述性的东西,并且不表明它本身是Thread.


查看完整回答
反对 回复 2021-12-01
  • 2 回答
  • 0 关注
  • 617 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信