为什么报错为无法解析的变量

问题: 为什么id =idIn,age=ageIn报错为无法解析的变量

这是我写的代码:
public class Person {
private static final String ageIn = null;
private String id;
private String age ;
private String name;
private String sex;

Person(){
    id="123";
    age="18";
    name="小明";
    sex="女";}


Person(String id,String age,String name,String sex, String idIn){
    id=idIn;
    name=nameIn;
    age=ageIn;
    sex=sexIn;

}
public String getId(){
    return id;
}
public String getAge(){
    return age;
}
public String getName (){
    return name ;
}
public String getSex(){
    return sex;
}****

注意谁给谁赋值

private static final String ageIn = null;
private String id; //属性
private String age ; //属性
private String name; //属性
private String sex; //属性
Person(){
    id="123";
    age="18";
    name="小明";
    sex="女";}
 
 
Person(String id,String age,String name,String sex, String idIn){//参数列表
    id=idIn; //赋值 id是你的Person的属性 idIn是你的参数列表
    name=name; //赋值 没有nameIn这个参数,所以无法解析
    ageIn=age; // 赋值
    sex=sex; //赋值
 
}
public String getId(){
    return id;
}
public String getAge(){
    return age;
}
public String getName (){
    return name ;
}
public String getSex(){
    return sex;
}
class Person{
private String id;
private String age;
private String name;
private String sex;

Person(String id,String age,String name,String sexIn){
    this.id=id;
    this.age=age;
    this.name=name;
    sex=sexIn;
}

}