面向对象--类的修饰符

1.权限修饰符

public protected 默认不写 private

权限修符使用范围
public本类,同包,子类 都可以访问
protected本类,同包 子类(通过子类对象在子类范围内部可以访问)
默认不写本类 同包
private只有本类

2.特征修饰符

2.1 final

  • 最终的 不可更改的
  • 修饰变量:
  1. 如果变量没有赋值 就给一次机会赋值
  2. 如果变量有值则变量得值不准改变(如果存放的是引用类型,则地址引用不可以改变)
  • 修饰属性:修饰属性必须赋初始值,否则编译报错
  • 修饰方法:方法是最终的不可更改的,方法不能被子类重写
  • 修饰类:类是最终的不可以被继承(常见的工具类都是final的)

2.2 static

  • 静态的:静态元素在静态元素区存储,在类加载时的同时加载
  • 静态元素存储在静态元素区,只存在一份为类的对象共享,可以是使用 类名去访问
  • 静态成员中可以访问静态成员 不可以访问非静态成员,不可以出现this super
  • 实例变量可以访问 静态成员,实例变量
  • 静态元素区无法被GC回收

2.3 abstract

  • 抽象

1.3 类的加载机制

  • 加载类模板(属性 方法 块 构造方法) 静态空间(静态属性 静态方法 静态块 静态块默认输出)
  1. 加载父类
  2. 父类会产生自己的静态空间(类变量 类方法 静态块 自动执行静态块)执行静态块
  3. 加载子类
  4. 字类会产生自己的静态空间 类变量 类方法 静态块 自动执行静态块)执行静态块
  5. 开辟对象空间
    //(supper 会默认调用父类的无参数构造方法)
  6. 加载父类的非静态成员 (属性 方法 块 构造方法 )
  7. 默认执行代码块
  8. 加载字类的非静态成员 (属性 方法 块 构造方法 )
  9. 执行子代码块,执行子类构造方法
  10. 将对象空间的地址引用交给 栈中的变量存储

1.3 抽象 abstract(描述事物)

  • 修饰方法:只有方法结构,没有方法体
  • 修饰类:抽象类 不一定含有抽象方法 普通类不能存放抽象方法(只比普通类多了可以含有抽象方法) 不能直接创建对象

1.4 接口interface(定义规则)

  • 属性:只能说公有静态常量public static final
  • 方法:只能含有公有抽象方法
  • implements是实现
    接口不能继承别的类;抽象类可以直接多实现接口,具体类必须将接口中的方法实现 ;接口与接口可以多实现
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值