欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Java 面向对象三大特征之一:封装

程序员文章站 2023-02-02 18:54:55
面向对象三大特征之一:封装 概念:将类的某些信息隐藏在类内部,不允许外部程序直接访问,而是通过该类提供的方法类实现对隐藏信息的操作和访问 封装的好处:隐藏类的实现细节方便加入控制语句方便修改实现只能通过规定方法访问数据 封装的步骤:1.修改属性 的可见性 >>>>>>设为private2.创建公有的 ......

 


面向对象三大特征之一:封装

概念:
将类的某些信息隐藏在类内部,不允许外部程序直接访问,而是通过该类提供的方法类实现对隐藏信息的操作和访问

封装的好处:
隐藏类的实现细节
方便加入控制语句
方便修改实现
只能通过规定方法访问数据

封装的步骤:
1.修改属性 的可见性  >>>>>>设为private
2.创建公有的getter/setter方法  >>>>>>用于属性的读写
3
在getter/setter方法中加入属性控制语句  >>>>>>对属性值的合法性进行判断

封装的快捷键:Shift+Alt+S+R

 废话不多说,上栗子:

Java 面向对象三大特征之一:封装
public class Dog {
    //属性 
             //昵称
        private     String name;
            //健康值
        private     int health;
            //亲密度
        private    int love;
            //品种
        private    String strain="聪明的拉不拉多犬";
    
        
        
        
        //获得值 只读方法
    public String getName() {
            return name;
        }



//set 赋值 可写方法

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





        public int getHealth() {
            return health;
        }





        public void setHealth(int health) {
            
            if (health<0 || health>100) {
                this.health=40;
                System.out.println("健康值必须在0到100之间");
            }
            else
            {
            
            this.health = health;
            }
        }





        public int getLove() {
            return love;
        }





        public void setLove(int love) {
            this.love = love;
        }





        public String getStrain() {
            return strain;
        }





        public void setStrain(String strain) {
            this.strain = strain;
        }





    /**
     * 输出具体的狗类对象的信息
     */
            public void print()
            {
            System.out.println("宠物自白:我的名字叫"+this.name+"\n健康值为:"+health+"\n和主人的亲密关系"+love+"我是一只"+this.strain);    
                
                
            }
}
Dog.java
public class Test {

    /**
     * @param args
     */
    public static void main(String[] args) {
    
        
        
        Dog dog=new Dog();
        dog.setName("拉不拉多犬");
        System.out.println(dog.getName());
        dog.setHealth(90);
        System.out.println(dog.getHealth());
        
    }

}