在Java中,除了访问修饰符(public、private、protected)之外,还有一些非访问修饰符用来控制其他方面的类和成员。这些非访问修饰符包括了以下几种:
static修饰符
static
修饰符用来创建类变量和方法。静态变量属于类而不是实例,只有一份拷贝,所有实例共享。静态方法可以直接通过类名调用,而不需要实例化对象。
------ ----- ------- - ------ --- ----- - -- -- ---- ------ ------ ---- ----------- - -------- - -
final修饰符
final
修饰符可以用来修饰类、方法和变量。被final
修饰的类不能被继承,被final
修饰的方法不能被重写,被final
修饰的变量只能被赋值一次。
------ ----- ----- ------- - ----- --- - - --- -- ------- ------ ----- ---- --------- - ---------------------------- - -
abstract修饰符
abstract
修饰符用来创建抽象类和方法。抽象类不能被实例化,只能被继承。抽象方法没有方法体,必须在子类中实现。
------ -------- ----- ----- - -------- ---- ------- - ------ ----- ------ ------- ----- - --------- ---- ------ - --------------------------- - --------- - -
synchronized修饰符
synchronized
修饰符用来实现线程同步,确保多个线程访问共享资源时的安全性。被synchronized
修饰的方法只能被一个线程访问,其他线程必须等待。
------ ------------ ---- -------------- - -------------------------- --------- -
transient修饰符
transient
修饰符用来阻止变量的序列化,被transient
修饰的变量不会被保存到持久化存储中。
------ ----- ------- ---------- ------------ - --------- --- -- -
以上就是Java中常用的非访问修饰符,它们可以帮助我们更好地控制类和成员的行为和特性。