给线程起名字,不知道哪出问题报错两条

img
为啥别人这样写没问题,我写了就报错,报错内容如下,还报错两条,都指向第二句


public class First implements Runnable{
    private int ticketNums=10;
    @Override
    public void run() {
        while(true){
            if(ticketNums<1)
            break;
            System.out.println(Thread.currentThread().getName()+"获得了第"+ticketNums+"张票");
        }
    }
    public static void main(String[] args) {
        First f=new First();
        new Thread(f,name:"小明").start();
        
    }
}

name cannot be resolved to a variable
Syntax error on token ":", invalid AssignmentOperator

new Thread(f,name:"小明").start(); 这段要用字符串阿,换成"小明"
name:是idea自带的提示thread构造函数的入参叫name

First这个类发出来一下

别人的name是idea的参数名提示!!!!!

直接看源码的构造函数就知道,并没有你所说的那样的入参哦!!!