Java修饰符|关键字讲解(通俗版)——方便记忆!

在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去实现。

--------------好了,以上就是所有内容了,如果你觉得对你有帮助,还请给个点赞收藏+关哦!!!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值