Java 在一个方法里面使用 new Thread(......).start(); 到底是好是坏?

如题.方法参数有些是后须要定义为final... 如题.方法参数有些是后须要定义为 final 展开
 我来答
jjyy295
2011-11-14
知道答主
回答量:6
采纳率:0%
帮助的人:3.7万
展开全部
这样的习惯不好,LZ这样的做法对于简单的线程肯定是没有问题的,但是匿名线程最大的问题是没有办法处理线程状态的改变,比如说:
有一个线程,我们管它叫p 定义为new Thread().start(); 这个时候如果我们想让这个线程在某种情况下挂起、休眠或者强制关闭的话,都是没有办法实现的,只能等着线程自动执行完,相当于为我们创建了一个没有办法人工操作的线程。
如果你的这个线程要用到原来方法中的变量的话,需要加上final,这个道理和内部类中使用该方法的变量是一个道理。
雾里风雷
2011-11-01 · 超过18用户采纳过TA的回答
知道答主
回答量:93
采纳率:0%
帮助的人:66.9万
展开全部
好的..因为有些匿名类不能使用外部的变量申明.要想使用,就要加上final
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2011-11-01
展开全部
加final的参数变成了常量,你懂的
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式