-
使用冒号:可以定义标签,定义标签的作用是帮助break和continue跳出多层循环
示例
class Solution { public static void main(String[] args) { out: for (int i = 0; i < 3; i++) { inner: for (int j = 0; j < 3; j++) { for (int k = 0; k < 3; k++) { if (k%2 == 0) { break out; } else { continue inner; } } } } } }
-
final的用途
(1) 修饰类的__字段__
表示字段__引用不可变__(如果是基本变量,那么它的值不可以改变;如果是对象,那么它的地址不变,但是地址上的内容可以变)
用final修饰的类的字段时,必须被显示初始化
1° 静态变量和非静态变量都可以在定义时初始化
2° 非静态变量可以在__初始化块__中 或 __构造函数__中初始化
3° 静态变量可以在__静态初始化块__中初始化
final修饰的字段还保证了初始化过程中的__内存可见性__
(2) 修饰类的__方法__
表示不可被派生类覆盖
(3) 修饰函数的__参数__
表示当前参数在函数内部__引用不可变__(如果是基本变量,那么它的值不可以改变;如果是对象,那么它的地址不变,但是地址上的内容可以变)
(4) 修饰__类__
表示一个类不能被派生(例如Integer、String、StringBuffer类)
finally和abstract不能连用(因为一个要求不能被派生,一个要求必须有派生实现类,矛盾)
-
static的用途
(1) 静态变量
内存中只有一个复制
(2) 静态方法
只能访问所属类的静态成员变量和静态成员方法
(3) 静态代码块
只在类的初始化时__执行一次__
(4) 静态内部类
可以访问外部类的所有静态方法和静态成员变量(包括private)
1° 只有内部类才可以用static修饰,外部类不可以
2° static不能用于函数中定义局部变量(因为没有意义)
-
instanceof
(1) 一个二元__运算符__
(2) if (a instanceof B): a是一个对象的实例,instanceof代表判断a是否是B的一个实例,B可以是__接口、抽象类、类、数组__
(3) 示例
结果是TRUE
class Super { } class Derived extends Super { } class Test { public static void main(String[] args) { Derived derived = new Derived(); if (derived instanceof Super) { System.out.println("TRUE"); } else { System.out.println("FALSE"); } int[] a = new int[2]; if (a instanceof short[]) { System.out.println("FALSE"); } } }
-
strictfp
(1) 可以修饰类、接口、方法
(2) 作用是使得被修饰的类、接口、方法,在进行浮点数(float, double)运算时,会严格按照标准,不同的硬件平台上运行程序会有一致的结果
chapter04_Java基础知识_9_Java关键字
最新推荐文章于 2025-08-08 20:15:00 发布