qiuqiuerchibaobaoo 2023-04-01 19:23 采纳率: 80.8%
浏览 19
已结题

关于#字符串#的问题,如何解决?

编程题。定义一个人类(Person)和学生类(Student),要求:
‏(1)Person包含:4个保护型的数据成员name、address、sex、age,分别为字符串、字符串、字符及整型,分别表示姓名、地址、性别和年龄;1个四参构造方法和1个无参构造方法,用于初始化四个成员;1个公有的输出方法print()用于输出4个成员属性的值。
‏(2)Student继承自Person,包含:增加2个私有的整型成员math、english用于存放数学和英语成绩;1个六参构造方法和1个无参构造方法用于初始化6个成员属性;重写输出方法print()用于输出全部6个属性的值。
‏(3)定义测试类Test,分别通过有参和午餐构造方法创建2个Person类和2个Student类的对象,并调用print()方法。
‏(4)无明确要求的可灵活定义,如未明确要求类的访问权限,则将类定义为公有或默认权限均可。
‏(5)提交3个解答:Person类定义的源代码或源代码截图,Student 类定义的源代码或源代码截图,Test 类定义的源代码或源代码截图。

public class Test {
    public static void main(String args[]){
        Student stu1=new Student("xiaohong","tianjin",'nv',18,44,55);
        stu1.print();
        Student stu2=new Student();
        stu2.print();
    }
}

第三问如何定义Person

  • 写回答

2条回答 默认 最新

  • threenewbee 2023-04-01 19:44
    关注
    class Person {
        protected String name;
        protected String address;
        protected char sex;
        protected int age;
    
        public Person() {
            this.name = "";
            this.address = "";
            this.sex = ' ';
            this.age = 0;
        }
    
        public Person(String name, String address, char sex, int age) {
            this.name = name;
            this.address = address;
            this.sex = sex;
            this.age = age;
        }
    
        public void print() {
            System.out.println("Name: " + name);
            System.out.println("Address: " + address);
            System.out.println("Sex: " + sex);
            System.out.println("Age: " + age);
        }
    }
    
    class Student extends Person {
        private int math;
        private int english;
    
        public Student() {
            super();
            this.math = 0;
            this.english = 0;
        }
    
        public Student(String name, String address, char sex, int age, int math, int english) {
            super(name, address, sex, age);
            this.math = math;
            this.english = english;
        }
    
        @Override
        public void print() {
            super.print();
            System.out.println("Math score: " + math);
            System.out.println("English score: " + english);
        }
    }
    
    public class Test {
        public static void main(String args[]){
            Student stu1=new Student("xiaohong","tianjin",'nv',18,44,55);
            stu1.print();
            Student stu2=new Student();
            stu2.print();
        }
    }
    
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 4月21日
  • 已采纳回答 4月13日
  • 修改了问题 4月1日
  • 创建了问题 4月1日

悬赏问题

  • ¥15 metadata提取的PDF元数据,如何转换为一个Excel
  • ¥15 关于arduino编程toCharArray()函数的使用
  • ¥100 vc++混合CEF采用CLR方式编译报错
  • ¥15 coze 的插件输入飞书多维表格 app_token 后一直显示错误,如何解决?
  • ¥15 vite+vue3+plyr播放本地public文件夹下视频无法加载
  • ¥15 c#逐行读取txt文本,但是每一行里面数据之间空格数量不同
  • ¥50 如何openEuler 22.03上安装配置drbd
  • ¥20 ING91680C BLE5.3 芯片怎么实现串口收发数据
  • ¥15 无线连接树莓派,无法执行update,如何解决?(相关搜索:软件下载)
  • ¥15 Windows11, backspace, enter, space键失灵