• 封装


    小白一枚,若内容有侵权,请指出

    今天总结一下面对对象程序设计三大特性之一:封装

    封装

    封装其实就是一种思想,做个小小的例子,平常用的充电宝,我们可以通过统一的USB接口去使用它,但是其内部构造是怎么样子,却不了解。

    封装思想:

    1.把对象的状态和行为看成一个统一的整体 将二者存放在一个独立的模块中(类)
    2.信息隐藏 隐藏对象功能实现细节(尽可能隐藏)

    如果外界想拿到隐藏的信息的值,就只能看有没有提供相应的接口,即取值和赋值的方法。

    没有封装就没有继承,但是继承会破坏封装

    class User{
        private String name; //字段名  即属性私密化
        private int age;
        
        //取值和赋值方法
        public void setName(String name) {
            this.name = name;     //字段名 = 变量取值和赋值方法
        }
        public String getName() {
            return name;           //return字段名
        }
    }

    public static void main(String[] args) {
            //此时不能直接拿到name和age的值,也不能直接对其赋值,只能通过get,set方法
            User u1 = new User();
            
            u1.setName("张三");
            
            System.out.println(u1.getName());
    }

    讲到封装,就必须讲讲修饰符

    修饰符

    当在定义类时,使用public,可不写(默认一定为public)


    1.private (类访问权限):修饰字段,方法,构造器,只能在当前类的范围
    2.package (缺省/包访问权限):(即不写修饰符的时候)在同一个包中才可访问   
    3.protected (子类访问权限):其他类不能访问,但是父类和子类(不在同一个包中也可以)可以访问
    4.public (公共访问权限):在任何地方都可以访问

    所以,封装不仅仅体现在类上,包(package)也体现了封装

     

    坚持学习,永远年轻,永远热泪盈眶
  • 相关阅读:
    关于 Mercury_Lc 说明
    Java 对象和类
    Java int 与 Integer 区别
    Java Number & Math 类
    HTML | CSS | JavaScript 常见错误
    B. Heaters ( Codeforces Round #515 (Div. 3) )
    A. Vova and Train ( Codeforces Round #515 (Div. 3) )
    数据结构实验之排序四:寻找大富翁(SDUT 3401)
    JavaScript 与 Java
    A. The Fair Nut and Elevator (Codeforces Round #526 (Div. 2))
  • 原文地址:https://www.cnblogs.com/jiang0123/p/11279802.html
Copyright © 2020-2023  润新知