封装

封装

该露的露,该藏的藏

  • 我们程序设计要追求高内聚,低耦合

    高内聚:类的内部操作细节自己完成,不允许外部干涉

    低耦合:仅暴露少量的方法给外部使用

  • 通常,应禁止直接访问一个对象中数据的实际表示,而应通过操作接口来访问(赋值和获取),这称为信息隐藏

  • 封装大部分是对于属性来的,对方法比较少,学了面向对象后,属性一般都用private修饰,不咋用public了

  • 有返回值参数的方法被调用会被当成一个值,可以直接用输出语句输出,也可以让它返回一个值然后在输出那个值

,一般直接输出语句输出,例如:System.out.println(demo05.getname());

  • 那么属性既然被private修饰了,那怎么使用该属性呐?

    要用get/set方法,一个赋值,一个获取

    快捷键:Alt+insert

    输出语句的快捷键:要输出的东西 . sout

  • 我们可以通过set方法增强程序的安全性,例如:

    public class Demo05 {
        //属性一般都用private修饰
        private String name;
        private int age;
        //set/get方法来赋值和获取
        public int getAge() {
            return age;
        }
        public void setAge(int age) {
            //判断输入的年龄是否合理
            if(age>120 || age<0){
                System.out.println("您输入的年龄不在正常范围内!");
            }else{
                this.age = age;
            }
        }
        public static void main(String[] args) {
            Demo05 demo05 = new Demo05();
            demo05.setAge(999);
            System.out.println(demo05.getAge());
        }
    }
    
  • 封装的意义:

    1. 提高程序的安全性
    2. 隐藏代码的实现细节
    3. 增加了系统的可维护
  • 记住这句就够了:属性私有,get/set

posted on   汪汪程序员  阅读(103)  评论(0编辑  收藏  举报

编辑推荐:
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5
点击右上角即可分享
微信分享提示