关于继承问题的故事,有厉害的人教我一下怎么做嘛?

小王是一个毕业不久的大学生,在北京某公司实习。突然有天,小王的养父给小王发了一个消息,告诉小王,小王的亲生父亲意外去世了,井给小王留下了一合车和100W。编程实现,小王(Son类,属性有姓名,性别,年龄,婚姻状态,妻子姓名,方法有收消息)收到养父的信息(Yfather类, 有方法发消息),以及小王继承亲生父亲(Father类: 属性有车和钱) 的一台车(ca类, 属性有车品牌,车牌号)和100W, 小王有了100W后, 就回到家乡考了公务员,并和小美结婚(在son类里面增加方法修改婚姻状态,设置妻子姓名) ,从此过上了幸福的生活。

这题有意思



@Data
class Son{
    private String name;
    private String sex;
    private int age;
    private String hunYingZhuangTai;
    private String qiZiName;

    public Son(String name, String sex, int age) {
        this.name = name;
        this.sex = sex;
        this.age = age;
        this.hunYingZhuangTai = "未婚";
    }

    public void receiveMsg(Father father){
        System.out.println(name + " 收到信息");
        try {
            Thread.sleep(1000L);
        } catch (InterruptedException e) {
        }
        System.out.println(name + " 继承了亲生父亲的遗产,金钱:"+father.getMoney() + ",车:"+father.getCar().getNo());
        try {
            Thread.sleep(1000L);
        } catch (InterruptedException e) {
        }
        System.out.println(" 回到家乡考了公务员 ");
        try {
            Thread.sleep(1000L);
        } catch (InterruptedException e) {
        }
        jieHun("小美");
    }
    private void jieHun(String qiZiName){
        this.hunYingZhuangTai = "已婚";
        this.qiZiName = qiZiName;
        System.out.println(name + " 结婚了,妻子:"+qiZiName);
    }
}
@Data
@AllArgsConstructor
class Father{
    private Car car;
    private int money;
}
@Data
@AllArgsConstructor
class Car{
    private String pp;
    private String no;
}
class Yfather{
    private Son son;
    public Yfather(Son son) {
        this.son = son;
    }

    public void sendMsg(Father father){
        son.receiveMsg(father);
    }
}

 public static void main(String[] args) throws IOException, ClassNotFoundException {

        Son son = new Son("小王", "男", 22);
        Yfather yfather = new Yfather(son);
        Car car = new Car("大众","川A123456");
        Father father = new Father(car,1000000);

        yfather.sendMsg(father);

        System.out.println("小王最终信息:"+son);
    }

大概五个实体类,
一个儿子的实体类(设置好对应属性,包括后面的婚姻状态),
一个父亲公用的实体类(只设置一些共用的属性字段),然后再创建生父养父两个继承父亲公用实体类的实体类,具体各自实体类中再根据父亲和养父的各自要保存的信息设置对应的属性字段,比如养父有消息属性,父亲有房子金额啥的属性,另外车的信息还需要单独建一个实体类,父亲的车相关的属性只保存车实体中其中用以识别的字段就行(比如车id,车名啥的)
一个车实体类,
然后这些实体都得有getset方法