1.继承Thread类,重写run方法

package com.gang;
import java.util.*;
public class Harbor03 extends Thread{
@Override
public void run() {
for (int i = 0; i < 200; i++) {
System.out.println("我在看代码");
}
}
public static void main(String[] args) {
Harbor03 harbor03 = new Harbor03();
harbor03.start();
for (int i = 0; i < 200; i++) {
System.out.println("主线程");
}
}
}
2.实现runable接口,重写run方法

package com.gang;
import java.util.*;
public class Harbor03 implements Runnable{
@Override
public void run() {
for (int i = 0; i < 200; i++) {
System.out.println("我在看代码");
}
}
public static void main(String[] args) {
Harbor03 harbor03 = new Harbor03();
new Thread(harbor03).start();
}
}
3.龟兔赛跑代码
package com.gang;
import java.util.*;
public class Harbor03 implements Runnable{
@Override
public void run() {
for (int i = 0; i < 200; i++) {
if (Thread.currentThread().getName().equals("兔子")&& i%10==0){
try {
Thread.sleep(0);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
boolean flag=gameOver(i);
if (flag){
break;
}
System.out.println(Thread.currentThread().getName()+"-->跑了"+i+"步数");
}
}
private String winner;
private boolean gameOver(int setps){
if (winner !=null){
return true;
}
if (setps==100){
winner=Thread.currentThread().getName();
System.out.println(winner+"冠军冠军");
return true;
}
return false;
}
public static void main(String[] args) {
Harbor03 harbor03 = new Harbor03();
new Thread(harbor03,"兔子").start();
new Thread(harbor03,"乌龟").start();
}
}