封装(encapsulation)220416

本文详细介绍了Java中封装的概念,强调了高内聚和低耦合的优点,如提高代码安全性、复用性和可维护性。通过访问控制符实现封装,并通过实例展示了protected成员的访问规则。同时,提出了封装的简单开发规则,提倡使用private和public修饰符来管理类的属性和方法。
摘要由CSDN通过智能技术生成

高内聚、低耦合
封装优点:
1 提高代码安全性
2.提高代码复用率
3.高内聚:封装细节,便于修改内部代码,提高可维护性
4.低耦合:简化外部调用,便于使用者使用,便于扩展和协作。
封装的实现
Java通过“访问控制符”来控制哪些需要封装
在这里插入图片描述**注:**关于protected的两个细节:
1.若父类和子类在同一个包下,子类可访问父类的protected成员,也可以访问父类对象的protected成员。
2.若子类和父类不在同一个包下,子类可以访问父类的protected成员,不能访问父类对象的protected成员。
在这里插入图片描述

package com.bjsxt.testencapsulation.a;

public class Person {
    private int testPrivate = 100;
    int testDefault = 200;
    protected int testProtected = 300;

    public void test(){
        System.out.println(this.testPrivate);
        System.out.println(this.testDefault);
        System.out.println(this.testProtected);
    }

}

package com.bjsxt.testencapsulation.a;

public class Student {
    public static void main(String[] args) {
        Person p = new Person();
        System.out.println(p.testDefault);
        System.out.println(p.testProtected);
    }
}


package com.bjsxt.testencapsulation.b;

import com.bjsxt.testencapsulation.a.Person;

public class Teacher extends Person {
    public void test(){
        System.out.println(super.testProtected);
    }

    public static void main(String[] args) {
        Person p = new Person();
//      System.out.println(p.testProtected);
//1.若父类和子类在同一个包下,子类可访问父类的protected成员,也可以访问父类对象的protected成员。
//2.若子类和父类不在同一个包下,子类可以访问父类的protected成员,不能访问父类对象的protected成员。

    }
}

封装使用细节
开发中封装的简单规则
1.一般使用private访问权限。
2.提供相应的get/set方法访问相关属性,这些方法通常是public修饰的,以提供对属性的赋值与读取操作(注意:boolean变量的get方法是is开头!)
3.一些只用于本类的辅助性方法可使用private修饰,希望其他类调用的方法用public修饰。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值