zoukankan      html  css  js  c++  java
  • java第六章 封装

    实现封装:
    1、设为private,防止错误的修改
    2、创建共有的getter/setter方法
    3、在getter/setter方法中加入属性控制语句

    封装的意义:

    包的概述:
    java中的包机制也是封装的一种形式
    作用:
    包允许将类组合成较小的单元(类似文件夹),易于找到和使用相应的类文件
    防止命名冲突
    包允许在更广的范围内保护类、数据和方法

    练习:

    package com.fengzhuang;
    /**
     * Dog.java
     * @author 陈
     *2019.1.16
     */
    public class Dog {
        //创建一个类
        String name;
        //定义名字
        private String sex;
        //定义性别 设置私有
        private int health;
        //定义健康值 设置私有
        private int love;
        //定义亲密度 设置私有
        private String choose;
        //定义选择类型那种类型的宠物 设置私有
        
        public String getChoose() {
            //定义获得选择哪种类型的宠物的方法
            return choose;
        }
    
        public void setChoose(String choose) {
            //定义设置选择哪种类型的宠物值得方法
            if(choose.equals("1")) {    
                //如果输入1 选择为狗狗类型
                choose = "狗狗";
            }else if(choose.equals("2")) {
                //如果摄入2 选择为企鹅类型
                choose ="企鹅";
            }else {
                //否则默认为狗狗类
                System.out.println("没有你选择的类型。默认为1、狗狗");
                choose = "狗狗";
            }
            this.choose = choose;
        }
    
        public String getName() {
            return name;
        }
    
        public String getSex() {
            return sex;
        }
        public void setSex(String sex) {
            //定义设置宠物性别值的方法
            if(sex.equals("1")) {
                //如果输入1 性别赋值Q仔
                sex = "Q仔";
            }else if(sex.equals("2")) {
                //如果输入2 性别赋值Q妹
                sex = "Q妹";
            }else {
                //否则默认Q仔
                System.out.println("输入的性别有误,默认Q仔。");
                sex = "Q仔";
            }
            this.sex = sex;
        }
        public int getHealth() {
            return health;
        }
        public void setHealth(int health) {
            //定义设置健康值的方法
            if(health>100||health<0) {
                //如果健康值大于100且小于0 则默认健康值为60
                System.out.println("设置的值超出范围,默认设置60.");
                health = 60;
            
            }
            this.health = health;
        }
        public int getLove() {
            return love;
        }
        public void setLove(int love) {
            //定义设置亲密度的方法
            if(love>100&&love<0) {
                //如果健康值大于100小于0 则默认60
                System.out.println("设置的值超出范围,默认设置60.");
                love = 60;
                return;
            }
            this.love = love;
        }
        public void make() {
            //定义宠物自白的方法
            System.out.println("宠物的自白:");
            System.out.println("我的名字叫"+name+",健康值是"+this.health+",和主人的亲密度是"+love+",我的性别是"+sex);
        }
    }
    package com.fengzhuang;
    /**
     * Test.java
     * 陈
     * 2019.1.16
     */
    import java.util.Scanner;
    
    public class Test {
        //创建一个测试类
        public static void main(String[] args) {
            Scanner sc = new Scanner(System.in);
            Dog dog = new Dog();
            //创建dog对象
            System.out.println("欢迎您来到宠物店!");
            System.out.println("请输入要领养宠物的名字:");
            dog.name = sc.nextLine();
            //调用类给name赋值
            System.out.println("请选择要领养的宠物类型:(1、狗狗 2、企鹅)");
            dog.setChoose(sc.nextLine());
            //调用setChoose方法给choose赋值
            System.out.println("请选择"+dog.getChoose()+"的性别(1、Q仔 2、Q妹):");
            dog.setSex(sc.nextLine());
            //调用setSex方法给sex赋值
            System.out.println("请输入"+dog.getChoose()+"健康值(1~100之间)");
            dog.setHealth(sc.nextInt());
            //调用setHeakth给health赋值
            dog.make();
            //调用make方法
        }
    }

  • 相关阅读:
    java泛型的一些知识点:Java泛型--泛型应用--泛型接口、泛型方法、泛型数组、泛型嵌套
    Java遍历Map的四种方式
    Less20、21、22【报错注入+Cookie字段注入+Base64编码】
    Less18、19【报错注入+User-Agent、Referer字段注入】
    Less17【报错注入+Update注入/时间注入】
    Less-16【盲注+时间注入】
    Less-15【盲注+时间注入】
    Less-14【报错注入】
    Less-12、13【报错注入】
    Less-11【报错注入】
  • 原文地址:https://www.cnblogs.com/qq993411626------/p/10279047.html
Copyright © 2011-2022 走看看