在Java中关键字的应用在程序开发中是尤为重要的,能够合理的应用关键字,无疑会给开发带来便捷。对于刚接触JavaSE的小伙伴经常会被关键字弄得一头雾水。
那么,我们话不多说直接开整!!!
一、PPP(这里指的可不是“点对点协议”哈!三个P分别代表public,protected,private)
public
关键字中的“公交车”,
只要想,谁都能用!public的访问范围是关键字中最大的,任何类都可以调用public修饰的方法、属性。
protected
够哥们!讲义气!是protected关键字的做事原则。
被protected关键字修饰的成员对本包内和其子类可见
private
关键字中的“小仙女”,自家生自家养,除了本类之外的一切皆不可碰我!
private译为“保护的”,该关键字修饰的成员只允许本类使用,对其他的类皆不可见,也不可用。这也是Java的封装性!
注:Java中如果你不写访问修饰符、那么默认的访问范围为:本类、本包内!
二、final
“老大哥”final!只要你认final这个大哥那么谁都不敢动你,遇到事了你就说:我大哥是final!!
final译为最终的、不可变的。记住!final是“老大哥”。
被final修饰的类无法被继承。
被final修饰的方法无法被重写。
被final修饰的局部变量只能赋一次值。
被final修饰的成员变量必须手动赋值。(一般情况下,成员变量如果没有赋值,那么它会有一个默认值,但是被final修饰的话情况可就不一样了,你必须手动为它赋值。)
常量:被static和final同时修饰的变量就是“常量”
三、static
static——静态修饰符,修饰符我们知道了那么什么是静态呢?静态就是指在编译后JVM所分配的内存会一直存在,直到程序运行结束它才会消失。
那么这样做的意义又是什么呢?
我们知道如果要引用另一个类的方法、属性时,我们会通过实例化对象(在内存上开辟空间),再用 对象. 这种方式来引用另一个类。实例化那就意味着初始化,当你实例化一个类那么该类的属性都会在它们最初的状态,也就是你一开始赋的值,这时候被调用的类之前所做的任何修改(如果有的话)都将白费,因为实例化就意味着初始化。
每次实例化调用,JVM都会为其开辟空间。
但是,如果我们通过static来修饰就不一样了,前面说到过编译后JVM所分配的内存会一直存在,也就是说当你调用static修饰的成员,你用的还是一开始编译后JVM为其分配的内存空间,这也就意味着当你调用时,被调用的类不会初始化JVM也不会在内存上为其开辟新的空间,那么如果之前对这个类有过操作,操作的痕迹会一直在,你调用时它也在。
用static修饰的成员可以用 类名.来直接访问。
总结:优点,调用时更方便,对此类进行的修改会一直存在。
缺点,不灵活。
四、abstract
抽象的——常常用来修饰类、方法。
被该关键字修饰的抽象方法不会有{}包起来的业务逻辑,它们以;结尾。
抽象类只有声明没有实现,它们会被继承它的子类重写由子类去实现。
这有点类似于定义接口和实现接口。接口就是一个抽象类(也可以这么形容),接口里的方法都是抽象方法,它们由实现接口的类implements去实现。
--------------好了,以上就是所有内容了,如果你觉得对你有帮助,还请给个点赞收藏+关哦!!!