本篇文章给大家分享的是有关java中fina和static有什么区别,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。
Java中的集合主要分为四类:1、List列表:有序的,可重复的;2、Queue队列:有序,可重复的;3、Set集合:不可重复;4、Map映射:无序,键唯一,值不唯一。
final和static的区别
static作用于成员变量用来表示只保存一份副本,而final的作用是用来保证变量不可变。下面代码验证一下
public class FinalTest { public static void main(String[] args) { AA aa1 = new AA(); AA aa2 = new AA(); System.out.println(aa1.i); System.out.println(aa1.j); System.out.println(aa2.i); System.out.println(aa2.j); } } //j值两个都一样,因为是static修饰的,全局只保留一份 //i值不一样,两个对象可能产生两个不同的值, class AA { public final int i = (int) (Math.random()*100); public static int j = (int) (Math.random()*100); } //结果是 65、23、67、23
final 关键字的好处
final 关键字提高了性能,JVM 和 Java 应用都会缓存 final 变量
final 变量可以安全的在多线程环境下进行共享,而不需要额外的同步开销
补充:final 关键字可以用于成员变量、本地变量、方法以及类
final 成员变量必须在声明的时候初始化或者在构造器中初始化,否则就汇报编译错误
不能够对 final 变量再次赋值
本地变量必须在声明时赋值
在匿名类中所有变量都必须是 final 变量
final 方法不能被重写
final 类不能被继承
以上就是java中fina和static有什么区别,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注亿速云行业资讯频道。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。