final,private,static的用法与区别

Private

通过private可以实现封装

  (1)private修饰变量

  • 使得变量不可被继承
  • 被修饰的变量只允许在本类中访问

(2)private修饰方法

  • 使得方法不可被继承
  • 但是可以被本类中的其他方法访问

Final

(1)final修饰变量

  • 被修饰的变量名大写(一种习惯)
  • 一旦赋值不可更改(只能被赋值一次)

(2)final 修饰方法

  • 不可被子类重写,但是可以被子类继承
  • 不能用final修饰构造方法

Final方法比其他方法要快,在编译的时候已经静态绑定了,不需要再运行的时候进行动态绑定。

(3)final类

  • final参数:可读但是不可被修改
  • final类不可被继承

Static

(1)static变量

  • 直接使用类名.变量名进行调用
  • 类加载完毕之后初始化完成
  • 实例化很多歌类也只分配一次内存

(2)static方法

  • 不可被子类重写
  • 直接以类名.方法名进行调用
  • 不依赖于任何实例对象

不能访问非静态成员变量和非静态成员方法(必须要在实例化之后进行访问,比如有一个people类,里面有一个静态方法,在写静态方法的实现方式的时候,如果要访问同样people类里面的其他方法,那么需要先进行实例化)

(3)static代码块

  • 可以置于类中的任何地方
  • 一个类中可以有多个static块
  • 类被初次加载的时候,会按照static块的顺序来执行每个static块,且只执行一次

final方法和private方法的联系

父类的private方法是不能够被子类方法覆盖的,因此父类的private方法默认是final类型的

 

 

 

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值