我是靠谱客的博主 甜美盼望,最近开发中收集的这篇文章主要介绍final,private,static的用法与区别,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

一、Private
通过private可以实现封装
(1)private修饰变量
使得变量不可被继承
被修饰的变量只允许在本类中访问
(2)private修饰方法
使得方法不可被继承
但是可以被本类中的其他方法访问
二、Final
(1)final修饰变量
被修饰的变量名大写(一种习惯)
一旦赋值不可更改(只能被赋值一次)
(2)final 修饰方法
不可被子类重写,但是可以被子类继承
不能用final修饰构造方法
Final方法比其他方法要快,在编译的时候已经静态绑定了,不需要再运行的时候进行动态绑定。
(3)final类
final参数:可读但是不可被修改
final类不可被继承
三、Static
(1)static变量
直接使用类名.变量名进行调用
类加载完毕之后初始化完成
实例化很多个类也只分配一次内存
静态变量属于类,内存中只有一个实例,当类被加载,就会为该静态变量分配内存空间。跟 class 本身在一起存放在方法区中永远不会被回收,除非 JVM 退出。(方法区还存哪些东西可以看看:Java虚拟机运行时数据区域)
静态变量的使用方式:【类名.变量名】和【对象.变量名】。
(2)static方法
不可被子类重写
直接以类名.方法名进行调用
不依赖于任何实例对象
在非静态成员方法中是可以访问静态成员方法/变量的;
即使没有显式地声明为static,类的构造器实际上也是静态方法
static方法就是没有this的方法。在static方法内部不能调用非静态方法,反过来是可以的。而且可以在没有创建任何对象的前提下,仅仅通过类本身来调用static方法。这实际上正是static方法的主要用途。
不能访问非静态成员变量和非静态成员方法(必须要在实例化之后进行访问,比如有一个people类,里面有一个静态方法,在写静态方法的实现方式的时候,如果要访问同样people类里面的其他方法,那么需要先进行实例化)
(3)static代码块
可以置于类中的任何地方
一个类中可以有多个static块
类被初次加载的时候,会按照static块的顺序来执行每个static块,且只执行一次
final方法和private方法的联系
父类的private方法是不能够被子类方法覆盖的,因此父类的private方法默认是final类型的

最后

以上就是甜美盼望为你收集整理的final,private,static的用法与区别的全部内容,希望文章能够帮你解决final,private,static的用法与区别所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(41)

评论列表共有 0 条评论

立即
投稿
返回
顶部