zoukankan      html  css  js  c++  java
  • 宠物游戏例题

    package model;
    
    import java.util.Date;
    
    public abstract class Pet {
        private String name;
        private String sex;
        private int age;
        private Date createtime;
        private int happy;
        private int healthy;
        private int hungry;
        protected boolean isAlive;
          
        public Pet(String name, String sex) {
            super();
            this.name = name;
            this.sex = sex;
            this.age = 1;
            this.createtime = new Date();
            this.happy = 90;
            this.healthy = 100;
            this.hungry = 80;
            this.isAlive = true;
        }
        
        public abstract void eat();
        public abstract void play();
        public abstract void hospital();
        
        public void check(){
            if(healthy<5||hungry<5||hungry>95){
                isAlive = false;
            }
            if(happy<30){
                healthy -= 2;
            }
            if(healthy>100){
                healthy = 100;
            }
            if(happy>100){
                happy = 100;
            }
            long l = System.currentTimeMillis()-createtime.getTime();
            this.setAge((int)(l/1000/5)+1);
        }
        
        public void showInfo(){
            check();
            System.out.println("宠物信息:");
            System.out.println("	名字:"+name+",性别"+sex+",年龄:"+age);
            System.out.println("	开心值:"+happy);
            System.out.println("	健康值:"+healthy);
            System.out.println("	饥饿值:"+hungry);    
        }
        
        
        public boolean isAlive() {
            return isAlive;
        }
        public void setAlive(boolean isAlive) {
            this.isAlive = isAlive;
        }
        public String getName() {
            return name;
        }
        public void setName(String name) {
            this.name = name;
        }
        public String getSex() {
            return sex;
        }
        public void setSex(String sex) {
            this.sex = sex;
        }
        public int getAge() {
            return age;
        }
        public void setAge(int l) {
            this.age = l;
        }
        public Date getCreatetime() {
            return createtime;
        }
        public void setCreatetime(Date createtime) {
            this.createtime = createtime;
        }
        public int getHappy() {
            return happy;
        }
        public void setHappy(int happy) {
            this.happy = happy;
        }
        public int getHealthy() {
            return healthy;
        }
        public void setHealthy(int healthy) {
            this.healthy = healthy;
        }
        public int getHungry() {
            return hungry;
        }
        public void setHungry(int hungry) {
            this.hungry = hungry;
        }
        
        
    }
    package model;
    
    public class Rabbit extends Pet{
    
        public Rabbit(String name, String sex) {
            super(name, sex);
            
        }
    
        @Override
        public void eat() {
            if(this.isAlive){
                check();
                System.out.println(this.getName()+"拿到一根萝卜在吃,饥饿度-20");
                this.setHungry(this.getHungry()-20);
                check();
            }else{
                System.err.println("你的宠物挂了");
            }
        }
     
        @Override
        public void play() {
            if(this.isAlive){
                check();
                System.out.println(this.getName()+"玩了一个魔方,饥饿度+20,开心值+10");
                this.setHungry(this.getHungry()+20);
                this.setHappy(this.getHappy()+10);
                check();
            }else{
                System.err.println("你的宠物挂了");
            }
            
        }
        
        @Override
        public void hospital() {
            if(this.isAlive){
                check();
                System.out.println(this.getName()+"在医院里哭,饥饿度+20,健康值+50");
                this.setHungry(this.getHungry()-20);
                this.setHealthy(this.getHealthy()+50);
                check();
            }else{
                System.err.println("你的宠物挂了");
            }
            
        }
    }
    package test;
    
    import java.util.Scanner;
    import model.Pet;
    import model.Rabbit;
    
    public class Main {
    
        public static void main(String[] args){
            /*Pet p = new Rabbit("花花","女");
            p.showInfo();*/
            
            Pet pet = null;
            
            Scanner scanner = new Scanner(System.in);
            boolean selectFlag = true;
            boolean circleFlag = true;
            
            System.out.println("请输入宠物类型");
            System.out.println("1---兔子");
            while(circleFlag){
                if(selectFlag){
                    //String s = scanner.nextLine();
                    String s = scanner.nextLine();
                    System.out.println("输入宠物的姓名和性别,用逗号分开");
                    String info = scanner.nextLine();
                    String[] infos = info.split(",");
                    if("1".equals(s)){
                         pet = new Rabbit(infos[0],infos[1]);
                         selectFlag = false;
                    }
                }
                printControl();
                String ss =scanner.nextLine();
                if("1".equals(ss)){
                    pet.showInfo();
                }else if("2".equals(ss)){
                    pet.eat();
                }else if("3".equals(ss)){
                    
                }else if("4".equals(ss)){
                    
                }else if("5".equals(ss)){
                    System.out.println("再见");
                    circleFlag = false;
                }else{
                    System.out.println("无此操作");
                }
            }
            scanner.close();
        }
    
        private static void printControl() {
            System.out.println("输入想进行的操作");
            System.out.println("1---显示信息");
            System.out.println("2---吃饭");
            System.out.println("3---玩游戏");
            System.out.println("4---去医院");
            System.out.println("5---显示信息");
        }
    }
  • 相关阅读:
    sax解析xml案例二
    mysql之删除重复数据
    Android之Intent探究
    struts2之Action名称的搜索顺序
    struts2自定义拦截器二——模拟session超时的处理
    struts2之防止表单重复提交
    Android之日期及时间选择对话框
    sax解析xml案例一
    Android之单选按钮对话框
    查询修改nls_database_parameters系统配置
  • 原文地址:https://www.cnblogs.com/jgjk/p/7219701.html
Copyright © 2011-2022 走看看