访问权限和封装

访问权限

  • 概念
    • 用来限定其他对象对该类对象成员的访问权限,通过控制权限达到隐藏信息
    • 高内聚:内部数据操作细节自己完成
    • 低耦合:仅暴露少量方法给外部使用
      权限修饰符
    • 特点:
      • public:任何地方都可以访问
      • protected:子类访问权限
      • default(不写):一个包中可以访问
      • private:只有类内部使用

修饰符

  • 总体

    • 类:public修饰符 default(不写) final修饰符 abstract修饰符
    • 成员变量:4权限修饰符 final修饰符 static修饰符
    • 局部变量:final修饰符
    • 方法:4权限修饰符 ,final修饰符,static修饰符,abstract修饰符
  • final修饰符

    • 可以修饰类 成员变量 局部变量 和 方法
    • 修饰类:表示类不能继承
    • 修饰方法:不能被重写,可以重载
    • 修饰变量:值不能改变
      • final修饰的变量需要显示初始化
      • 值为基本数据类型,值不能改变
      • 值为引用类型,是说引用代表的地址值不能改变,即引用无法指向其他对象,但是原有的对象内容可以改变。
      • final修饰的某些变量,会在编译后直接被值代替
  • static修饰符

    • 可以修饰方法,成员变量和代码块
    • 修饰变量:静态变量
      • 类加载时就创建,在内存中只有一个拷贝,JVM只分配一次内存
      • 在对象间共享值时,可以使用
      • 方便访问变量时
    • 修饰方法:静态方法,不需要对象可调用。类名。方法名

      • 不能有super和this关键字
      • 不能访问非静态方法和非静态变量
      • 不能被abstract修饰
      • 会破坏多态
      • main方法需要时static的原因是程序入口时还没有创建对象,因此调用的方法必须是static的
      • 某种程度上,构造器也算是static的,因为需要无对象调用
    • 修饰代码块:静态代码块

      • 类加载时执行
      • 只执行一次
  • abstract修饰符

    • 修饰类和方法
    • 不能和static final和private一起使用
    • 修饰类:抽象类

      • 不能实例化
      • 可以有构造器
    • 修饰方法:抽象方法

      • 只有声明,没有实现
      • 子类必须重写父类的抽象方法
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值