🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
# Java 中的非访问修饰符 > 原文: [https://javabeginnerstutorial.com/core-java-tutorial/non-access-modifiers-in-java/](https://javabeginnerstutorial.com/core-java-tutorial/non-access-modifiers-in-java/) 在本文中,您将学习非访问修饰符。 以下是可用的 Java 非访问修饰符。 * `final` * `abstract` * `static` * `strictfp` * `native` * `syncronized` * `transient` ## `final`非访问修饰符 ### 适用于 : 1. [类](https://javabeginnerstutorial.com/core-java-tutorial/java-class-object-tutorial/) 2. 方法 3. [实例变量](https://javabeginnerstutorial.com/core-java-tutorial/instance-variable-java/) 4. [局部变量](https://javabeginnerstutorial.com/core-java-tutorial/local-variable-in-java/) 5. 方法参数 #### 最终类: 一个类别设置为`final`时,不能由任何其他类别扩展。 #### 示例:`java.lang`包中的字符串类 #### 最终方法: 一个方法设置为`final`时,*不能被任何子类覆盖*。 #### 最终变量: 当变量设置为`final`时,其值*不能*更改。 最终变量就像常量。 **示例**:`public static final int i = 10;` * * * ## `abstract`非访问修饰符 ### 关键词: * `abstract` ### 适用于: 1. 类 2. 方法 #### 抽象类: 抽象类可以具有抽象方法。 如果类具有抽象方法,则该类将成为抽象类。 一个类也可以是没有任何抽象方法的抽象类。 #### 抽象方法: 抽象方法是没有主体而只有签名的那些方法。 **示例**:`public abstract void method();` ## `syncronized`非访问修饰符 ### 适用于 1. 方法 #### 同步方法 同步方法一次只能由一个线程访问。 ## `native`非访问修饰符 ### 适用于 1. 方法 #### 本机方法 本机方法表明该方法是在依赖于平台的代码上实现的。 ## `Strictfp`非访问权限编辑 ### 适用于 1. 类 2. 方法 ### `Strictfp`类/方法 `Strictfp`非访问修饰符强制浮点或浮点操作遵守 IEEE 754 标准。 **注意**:`Strictfp`非访问修饰符*无法*应用于变量。 ## 备忘单 * **非访问修饰符**是`static`,`final`,`abstract`,`syncronized`和`volatile`。 * `static`关键字可以应用于**变量**和**方法**。 * 静态变量是那些不与任何实例关联但与类关联的变量,这意味着所有实例都将访问该变量的同一单个副本。 * 局部变量*不能*声明为`static`。 * `static`关键字也可以应用于*方法*。 它们将适用于所有实例,并且它们将不依赖于实例创建。 * 最终修饰符可以应用于*方法*和*变量*。 * `Final`是唯一可用于局部变量的修饰符。 * 一旦声明为`final`,则变量的值无法更改。 * 赋值后,最终变量不会获得默认值,而实例变量值无法更改。 * 最终方法不能被覆盖。