JAVA中static、final、static final的区别

简介: JAVA中static、final、static final的区别

1 问题

当我们在使用java写类的属性时总会用到很多的类型去修饰它,比如字符串String,整数型int,但是我们偶尔也会遇到 static、final、static final,那么他们的区别是什么呢?


2 方法

final

final可以修饰属性、方法、类,局部变量(方法中的变量)。

final修饰的属性的初始化可以在编译期,也可以在运行期,但是在初始化后就不能改变了。

final修饰的属性表明是一个常数(创建后不能被修改)。

final修饰的方法表示该方法在子类中不能被重写,同样该类不能被继承。


static

static可以修饰属性,方法,代码段,内部类。

static修饰的属性的初始化在类加载的时候可以改变。

static修饰的属性强调它们只有一个,但是它不可以修饰局部变量。


final static

final static 和static final没有什么区别都可以使用。

static修饰的属性强调它们只有一个,final修饰的属性表明是一个常数,final static 修饰的属性表示一旦给值,就不可以修改,并且可以通过类名访问。


3 结语

针对“JAVA中static、final、static final的区别”,通过分别讲述其不同意义和属性的方法,通过查阅相关资料,证明该方法是有效的,当然还有许多修饰对象的变量比如double以及更复杂的限定变量还未了解,未来会逐渐探究该问题并解决问题。


相关文章
|
9天前
|
设计模式 Java 开发者
Java中的static关键字
Java中的static关键字
18 0
|
2天前
|
Java 编译器
Java的重载与重写的区别
Java的重载与重写的区别
|
2天前
|
Java
Java的接口与抽象类的区别
Java的接口与抽象类的区别
|
3天前
|
Java 容器
【Java探索之旅】继承结构 继承和组合 protected final
【Java探索之旅】继承结构 继承和组合 protected final
9 0
|
3天前
|
存储 Java 编译器
【Java探索之旅】静态关键字static与代码块的奥秘
【Java探索之旅】静态关键字static与代码块的奥秘
8 0
|
5天前
|
消息中间件 Java 调度
Java多线程基础-3:进程与线程间的区别的联系
进程是操作系统中运行的应用程序,具有独立内存空间,包含代码、数据和堆栈,是资源分配的最小单位,而线程是CPU调度的最小单位,是进程内的执行任务,多个线程可共享进程资源。
15 0
|
5天前
|
人工智能 Java 开发者
Python与Java:两大编程语言的联系与区别
Python与Java:两大编程语言的联系与区别
|
8天前
|
Java
Java static关键字
`static`关键字用于修饰成员变量和方法,表示它们属于类而非对象。静态成员变量在内存中只有一份,可被所有对象共享,建议通过类名访问。实例变量每个对象独有,需通过对象访问。静态成员方法与类关联,可直接调用,不依赖对象,而实例方法需要对象来调用并能访问实例成员。在方法中,类方法不能直接访问实例成员,但实例方法可以访问类和实例成员。记得在适当时候使用`this`关键字。
14 1
|
8天前
|
存储 安全 Java
java面试基础 -- ArrayList 和 LinkedList有什么区别, ArrayList和Vector呢?
java面试基础 -- ArrayList 和 LinkedList有什么区别, ArrayList和Vector呢?
14 0
|
8天前
|
缓存 安全 Java
Java的Integer和int有什么区别?
Java的Integer和int有什么区别?
12 1