Java线程练习2-5。烦请老师检查和指正~
来源:2-5 自由编程
Heijyu
2021-10-08 10:48:30
老师,我根据题目的要求,写了两种,不知道哪一个比较好呢?
第一种
package com.imooc.thread;
class MyThread extends Thread{
//重写run方法
@Override
public void run() {
for(int i=1; i<=10; i++) {
System.out.println("打印机正在打印" + i);
}
}
}
public class ThreadDemoOne {
public static void main(String[] args) {
MyThread mt = new MyThread();
mt.start();
}
}
第二种
package com.imooc.thread;
class MyThreadOne extends Thread{
//无参构造方法
public MyThreadOne() {
}
//带参构造方法
public MyThreadOne(String name) {
super(name);
}
//重写run方法
@Override
public void run() {
for(int i=1; i<=10; i++) {
System.out.println(getName() + "正在打印" + i);
}
}
}
public class ThreadDemoTwo {
public static void main(String[] args) {
MyThreadOne mto = new MyThreadOne("打印机");
mto.start();
}
}
1回答
同学你好,这两种都是可以的,只不过一个使用的是无参构造创建对象,输出语句中直接写了打印机,第二个使用的带参 构造,将名称传入后进行获取,原理上是一致的,从代码的简洁程度来看第一种更为简洁,不过都是可以完成题目效果的,很棒呐,继续加油
祝学习愉快~
相似问题
回答 1