史莱姆部长 2021-09-11 21:43 采纳率: 100%
浏览 78
已结题

Java面向对象编程的题目

定义一个人类
属性包括:姓名,年龄,性别
属性私有化,对外提供公开的set和get方法
提供无参数构造器和有参数构造器
提供一个生病方法:ill(),在改方法中打印信息,例如:张三,男,29岁生病了

再定义一个类
属性包括:病毒名称name ,病毒体积size,病毒类型type
属性私有化,对外提供公开的set和get方法
提供无参数结构和有参数结构
提供一个攻击attack()方法,该方法的参数是“人”,例如attack(Person p)
在attack()方法中调用人对象的生病方法。
编写测试程序,创建病毒对象,创建人对象,模拟病毒攻击人。

  • 写回答

2条回答 默认 最新

  • 乌门坳 2021-09-11 22:52
    关注
    
    public class Person {
        private String name;
        private Integer age;
        private String gender;
    
        public Person() {
    
        }
    
        public Person(String name, int age, String gender) {
            this.name = name;
            this.age = age;
            this.gender = gender;
        }
    
        public void ill() {
            System.out.println(name + ", " + gender + ", " + age + "岁生病了");
        }
    
        public String getName() {
            return name;
        }
    
        public void setName(String name) {
            this.name = name;
        }
    
        public Integer getAge() {
            return age;
        }
    
        public void setAge(Integer age) {
            this.age = age;
        }
    
        public String getGender() {
            return gender;
        }
    
        public void setGender(String gender) {
            this.gender = gender;
        }
    
    }
    
    
    public class Virus {
        private String name;
        private Integer size;
        private String type;
    
        public Virus() {
    
        }
    
        public Virus(String name, int size, String type) {
            this.name = name;
            this.size = size;
            this.type = type;
        }
    
        public void attack(Person p) {
            System.out.println(name + " 攻击 " + p.getName());
            p.ill();
        }
    
        public String getName() {
            return name;
        }
    
        public void setName(String name) {
            this.name = name;
        }
    
        public Integer getSize() {
            return size;
        }
    
        public void setSize(Integer size) {
            this.size = size;
        }
    
        public String getType() {
            return type;
        }
    
        public void setType(String type) {
            this.type = type;
        }
    
    }
    
    
    public class TestVirus {
        public static void main(String[] args) {
            Virus virus = new Virus("新冠病毒", 10, "冠状病毒");
            Person person = new Person("张三 ", 29, "男");
            virus.attack(person);
        }
    }
    

    img

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 9月20日
  • 已采纳回答 9月12日
  • 创建了问题 9月11日

悬赏问题

  • ¥15 YoloV5 第三方库的版本对照问题
  • ¥15 请完成下列相关问题!
  • ¥15 drone 推送镜像时候 purge: true 推送完毕后没有删除对应的镜像,手动拷贝到服务器执行结果正确在样才能让指令自动执行成功删除对应镜像,如何解决?
  • ¥15 求daily translation(DT)偏差订正方法的代码
  • ¥15 js调用html页面需要隐藏某个按钮
  • ¥15 ads仿真结果在圆图上是怎么读数的
  • ¥20 Cotex M3的调试和程序执行方式是什么样的?
  • ¥20 java项目连接sqlserver时报ssl相关错误
  • ¥15 一道python难题3
  • ¥15 牛顿斯科特系数表表示