Encapsulation and inheritance case in Java

1. Code and renderings

1. Package

Case: Requirement Description
Use the package to implement the electronic pet system penguin correctly enter the health value and intimacy to
ensure the validity of the health value (0-100), otherwise the default value of 60 to
ensure the validity of the intimacy (0-100), otherwise The code for the default value of 60
is as follows (example):

package work1;

public class Dog {
    
    
    private String name;
    private String sex;
    private int love;

    public String getName() {
    
    
        return name;
    }

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

    public String getSex() {
    
    
        return sex;
    }

    public void setSex(int sex) {
    
    
        if(sex==1){
    
    
            this.sex = "Q仔";
        }else{
    
    
            this.sex = "Q妹";
        }

    }

    public int getLove() {
    
    
        return love;
    }

    public void setLove(int love) {
    
    
        if(love>=0&&love<=100){
    
    
            this.love = love;
        }else {
    
    
            System.out.println("亲密度应该在0-100之间,默认值是60");
            this.love = 60;
        }
    }
}

package work1;

public class Penguin {
    
    
    private String name;
    private String sex;
    private int health;

    public String getName() {
    
    
        return name;
    }

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

    public String getSex() {
    
    
        return sex;
    }

    public void setSex(int sex) {
    
    
        if(sex==1){
    
    
            this.sex = "Q仔";
        }else{
    
    
            this.sex = "Q妹";
        }

    }

    public int getHealth() {
    
    
        return health;
    }

    public void setHealth(int health) {
    
    
        if(health>=0&&health<=100){
    
    
            this.health = health;
        }else {
    
    
            System.out.println("健康值应该在0-100之间,默认值是60");
            this.health = 60;
        }
    }
}

package work1;

import java.util.Scanner;

public class Test1 {
    
    
    public static void main(String[] args) {
    
    
        Scanner sc = new Scanner(System.in);
        System.out.println("欢迎您来到宠物店! \n 请输入要领养宠物的名字:");
        String name = sc.next();
        System.out.println("请选择要领养的宠物类型:(1.狗狗  2.企鹅)");
        int i = sc.nextInt();
        if(i==1){
    
    //狗狗
            Dog dog = new Dog();
            dog.setName(name);
            System.out.println("请选择狗狗的性别:(1.Q仔  2.Q妹)");
            dog.setSex(sc.nextInt());
            System.out.println("请输入狗狗的亲密度(1~100之间):");
            dog.setLove(sc.nextInt());

            System.out.println("宠物的自白:\n 我的名字叫"+name+",健康值是"+0+",和主人的" +
                    "亲密度是"+dog.getLove()+",我的性别是"+dog.getSex());
        }else {
    
    //企鹅
            Penguin p = new Penguin();
            p.setName(name);
            System.out.println("请选择企鹅的性别:(1.Q仔  2.Q妹)");
             p.setSex(sc.nextInt());
            System.out.println("请输入企鹅的健康值(1~100之间):");
             p.setHealth(sc.nextInt());
            System.out.println("宠物的自白:\n 我的名字叫"+name+",健康值是"+p.getHealth()+",和主人的" +
                    "亲密度是"+0+",我的性别是"+p.getSex());
        }


    }
}

Insert picture description here

2. Inheritance

Case: Use inheritance to optimize the electronic pet system, extract the parent class, create a subclass, and use super in the subclass to call the parent class construction method.
The code is as follows (example):

package work3;

public class Dog extends Pet {
    
    
    @Override
    public void show() {
    
    
        System.out.println("宠物的自白:\n 我的名字叫"+this.getName()+",健康值是"+0+",和主人的" +
                "亲密度是"+this.getLove()+",我的性别是"+this.getSex());
    }

    private int love;

    public Dog(String name, int sex, int love) {
    
    
        super(name, sex);
        this.love = love;
    }

    public int getLove() {
    
    
        return love;
    }

    public void setLove(int love) {
    
    
        if(love>=0&&love<=100){
    
    
            this.love = love;
        }else {
    
    
            System.out.println("亲密度应该在0-100之间,默认值是60");
            this.love = 60;
        }
    }
}

package work3;

public class Penguin extends Pet {
    
    

    @Override
    public void show() {
    
    
        System.out.println("宠物的自白:\n 我的名字叫"+this.getName()+",健康值是"+this.getHealth()+",和主人的" +
                "亲密度是"+0+",我的性别是"+this.getSex());
    }
    private int health;

    public Penguin(String name, int sex, int health) {
    
    
        super(name, sex);
        this.health = health;
    }

    public int getHealth() {
    
    
        return health;
    }

    public void setHealth(int health) {
    
    
        if(health>=0&&health<=100){
    
    
            this.health = health;
        }else {
    
    
            System.out.println("健康值应该在0-100之间,默认值是60");
            this.health = 60;
        }
    }
}

package work3;

public class Pet {
    
    
    private String name;
    private String sex;

    public void show(){
    
    

    }

    public Pet(String name, int sex) {
    
    
        this.name = name;
        if(sex==1){
    
    
            this.sex = "Q仔";
        }else{
    
    
            this.sex = "Q妹";
        }
    }

    public String getName() {
    
    
        return name;
    }

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

    public String getSex() {
    
    
        return sex;
    }

    public void setSex(int sex) {
    
    
        if(sex==1){
    
    
            this.sex = "Q仔";
        }else{
    
    
            this.sex = "Q妹";
        }

    }
}

package work3;

import java.util.Scanner;

import static java.lang.System.out;

public class Test2 {
    
    
    public static void main(String[] args) {
    
    
        Scanner sc = new Scanner(System.in);
        out.println("欢迎您来到宠物店! \n 请输入要领养宠物的名字:");
        String name = sc.next();
        out.println("请选择要领养的宠物类型:(1.狗狗  2.企鹅)");
        int i = sc.nextInt();
        if (i==1){
    
    //狗狗
            out.println("请选择狗狗的性别:(1.Q仔  2.Q妹)");
            int sex=sc.nextInt();
            out.println("请输入狗狗的亲密度(1~100之间):");
            Dog dog = new Dog(name, sex, sc.nextInt());
            dog.show();
        }else {
    
    //企鹅
            out.println("请选择企鹅的性别:(1.Q仔  2.Q妹)");
            int sex=sc.nextInt();
            out.println("请输入企鹅的健康值(1~100之间):");
            Penguin p = new Penguin(name, sex, sc.nextInt());
            p.show();
        }
    }
}

Insert picture description here

to sum up

The above is the content of the encapsulation and inheritance case, mainly using the method of encapsulation and inheritance.

Guess you like

Origin blog.csdn.net/StruggleBamboo/article/details/111299944