栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

可通过参数运行吗?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

可通过参数运行吗?

自从我最初发布此文章至今已经快9年了,说实话,Java从那时起取得了一些进步。我将原始答案留在下面,但无需人们去做。9年前,在代码审查期间,我会质疑他们为什么这样做,也许批准了,也许没有。有了可用的现代lambda,对这样一个经过高度投票的答案提出建议,采取不合时宜的做法是不负责任的(公平地说,这种做法一开始就令人怀疑…)在现代Java中,该代码审查将被立即拒绝,这将是建议:

void foo(final String str) {    Thread t = new Thread(() -> someFunc(str));    t.start();}

像以前一样,诸如以有意义的方式处理该线程之类的细节留给读者练习。但坦率地说,如果您担心使用lambda,则应该更担心多线程系统。

原始答案,仅因为:

您可以在方法中声明一个类

void Foo(String str) {    class oneShotTask implements Runnable {        String str;        oneShotTask(String s) { str = s; }        public void run() { someFunc(str);        }    }    Thread t = new Thread(new oneShotTask(str));    t.start();}


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/485896.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号