新人学习JAVA,关于继承的一个问题

老师布置了一个作业,具体要求如下:
先创建一个flight对象(这个对象只有一个属性,就是航班号)
然后根据用户的输入,
判断这个flight对象
是pflight(个人航班,有两个属性,分别是航班号和个人的名字,航班号继承之前创建flight对象的属性,需要用户个人的名字)
还是gflight(群体航班,分别是航班号和群里数量,航班号继承之前创建flight对象的属性,需要用户输入补充群体的数量),
请问该如何实现?(需要在一个单独的CLASS里的MAIN方法实现)

 class Flight{
    private String F_NO;  //航班号
 }
 Class pFlight extends Flight{
    private String F_NO;  //航班号
        private String P_Name;    //个人名字

        public void setP_Name(String name){     //输入用户名
            this.P_Name=name;
        }
        public String getP_Name(){       //获得用户名
            return P_Name;
        }
 }
 Class gFlight extends Flight{
    private String F_NO;  //航班号
        private String P_Name;    //个人名字
        private int P_Count;     //群数量

        public void setG_Count(int count){      //输入群数量
            this.P_Count=count;
        }
        public String getP_Count(){          //获得群数量
            return P_Count;
        }
 }

class Flight{

       String flightnumber;

                        }

class Pflight extends Flight
{
String name;
}
class Gglight extends Flight
{
int numbers;
public Numbers(int fnumbers)
{
numbers=fnumbers;
}
public class test {
Gglight gt=new Gglight(数字);
}

public class SSSS {
private static class Flight {
int num;

    public Flight() {
        super();
    }

    public int getNum() {
        return num;
    }

    public void setNum(int num) {
        this.num = num;
    }

    private  Flight(int num) {

        this.num = num;
    }
    public void print(){
    }
}
private static class Pflight extends Flight {
    int num;
    String name;

    public Pflight(int num, String name) {
        this.num = num;
        this.name = name;
    }

    @Override
    public void print() {
        super.print();
        System.out.println("航班号:"+num+"旅客姓名:"+name);
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public int getNum() {
        return num;
    }

    public void setNum(int num) {
        this.num = num;
    }
}
private static class Gflight extends Flight {
    int num;
    int count;//群体数量

    public  Gflight(int num,int count) {
        this.num = num;
        this.count = count;
    }


    @Override
    public void print() {
        super.print();
        System.out.println("航班号:"+num+"群体数量:"+count);
    }

    public int getNum() {
        return num;
    }

    public void setNum(int num) {
        this.num = num;
    }

    public int getCount() {
        return count;
    }

    public void setCount(int count) {
        this.count = count;
    }
}

public static void main(String[] args) {
    Flight flight1 = new Pflight(30, "李`1雷");
    Flight flight2 = new Gflight(30, 40);
    flight1.print();
    flight2.print();
}

}