Java标识符和关键字有哪些?(java标识符和关键字有哪些区别)

createh52个月前 (01-24)技术教程19

在编写Java程序时,我们常常需要为类、变量、方法等命名。这些名称在Java中被称为标识符。标识符是开发者自定义的,用来表示各种程序元素。与此相对,有一些名称被Java语言赋予了特定的含义,只能用于特定的地方,这些名称被称为关键字。关键字不能作为标识符使用,因为它们在语言规范中已经被赋予了特定的语法功能。


标识符与关键字的区别


标识符


  • 用于命名变量、方法、类、接口等。
  • 可以由字母、数字、下划线 _ 和美元符号 $ 组成。
  • 不能以数字开头,大小写敏感,没有长度限制。
  • 例如:myVariable, sum, _count, $amount


关键字


  • 是Java语言预定义的具有特殊含义的单词。
  • 不能用作标识符。
  • 全部为小写。
  • 例如:class, public, static, if, else


示例


java


public class Example {
    private int myVariable; // myVariable 是标识符
    public static void main(String[] args) { // public, static, void 是关键字
        int sum = 0; // sum 是标识符,int 是关键字
        for (int i = 0; i < 10; i++) { // for, int 是关键字,i 是标识符
            sum += i;
        }
        System.out.println("Sum: " + sum); // System, out, println 是标识符
    }
}



Java语言关键字


Java关键字可以分为以下几类:


访问控制


关键字

说明

private

私有访问

protected

受保护访问

public

公共访问


类、方法和变量修饰符


关键字

说明

abstract

抽象类或方法

class

extends

扩展(继承)

final

最终类、方法或变量

implements

实现接口

interface

接口

native

本地方法

new

实例化对象

static

静态方法或变量

strictfp

严格浮点

synchronized

同步方法或块

transient

瞬态变量

volatile

易变变量

enum

枚举类型


程序控制


关键字

说明

break

中断循环

continue

继续循环

return

返回值或退出

do

执行循环

while

循环

if

条件语句

else

条件语句

for

循环

instanceof

类型检查

switch

选择语句

case

选择分支

default

默认分支

assert

断言


错误处理


关键字

说明

try

捕获异常块

catch

捕获异常

throw

抛出异常

throws

抛出异常声明

finally

异常处理完毕后执行


包相关


关键字

说明

import

导入包

package

包声明


基本类型


关键字

说明

boolean

布尔类型

byte

字节类型

char

字符类型

double

双精度浮点类型

float

单精度浮点类型

int

整数类型

long

长整数类型

short

短整数类型


变量引用


关键字

说明

super

父类引用

this

当前实例引用

void

无返回值


保留字


关键字

说明

goto

保留,未使用

const

保留,未使用


注意:true, false, 和 null 虽然看起来像关键字,但实际上它们是字面值,不能用作标识符。


深入示例:default关键字


default 关键字有三种用法:


  1. Switch语句中的默认分支
  2. java
  3. switch (day) { case 1: System.out.println("Monday"); break; case 2: System.out.println("Tuesday"); break; // ... default: System.out.println("Invalid day"); break; }
  4. 在 switch 语句中,当没有匹配的 case 时,执行 default 分支。
  5. 接口中的默认方法(Java 8 引入):
  6. java
  7. interface MyInterface { default void defaultMethod() { System.out.println("This is a default method"); } } class MyClass implements MyInterface { // 可以选择重写 defaultMethod 或使用默认实现 }
  8. 默认方法允许接口提供一个默认实现,以便实现类可以选择重写它。
  9. 默认访问修饰符
    默认访问修饰符是包级私有(没有修饰符时)。如果一个类、方法或变量没有任何访问修饰符,它是包私有的,仅在同一包中可见。
  10. java
  11. class PackagePrivateClass { void packagePrivateMethod() { System.out.println("This method is package-private"); } }


性能优化示例


假设我们有一个计算数组中元素之和的方法,下面是两种实现方式的性能对比:


普通for循环


java


public class PerformanceTest {
    public static void main(String[] args) {
        int[] array = new int[1000000];
        long sum = 0;

        long startTime = System.nanoTime();
        for (int i = 0; i < array.length; i++) {
            sum += array[i];
        }
        long endTime = System.nanoTime();

        System.out.println("For loop sum: " + sum);
        System.out.println("For loop time: " + (endTime - startTime) + " ns");
    }
}



增强型for循环


java


public class PerformanceTest {
    public static void main(String[] args) {
        int[] array = new int[1000000];
        long sum = 0;

        long startTime = System.nanoTime();
        for (int value : array) {
            sum += value;
        }
        long endTime = System.nanoTime();

        System.out.println("Enhanced for loop sum: " + sum);
        System.out.println("Enhanced for loop time: " + (endTime - startTime) + " ns");
    }
}



结果分析
增强型for循环虽然语法简洁,但在某些情况下可能会稍微慢于普通for循环,因为它引入了额外的迭代器开销。不过在大多数情况下,这种差异可以忽略不计,更重要的是代码的可读性和简洁性。


结论


理解标识符和关键字的区别是学习Java语言的基础。关键字是Java语言的核心,它们赋予了特定的语法功能,使Java程序具有结构和逻辑。而标识符则是我们在编写程序时的自定义名称,它们让我们的代码更加易读和可维护。通过对关键字的深入了解和实际应用,可以编写出更高效、更健壮的Java程序。

相关文章

Java语言的标识符(JAVA语言的标识符是区分大小写的)

Java语言的标识符:对类名、属性名、方法名、变量名等要素的命名使用称之为标识符(英文:identifier)。Java中对标识符的规定:标识符可以由26个字母、数字、下划线`_`、特殊符号`$`所组...

Java基础之Java标识符有哪些?命名规范是什么?

“这里是云端源想IT,帮你轻松学IT”嗨~ 今天的你过得还好吗?落日余晖的路上总是爱意弥漫别让世俗淹没生活的浪漫和热情- 2023.08.02-Java语言中,对于变量,常量,函数,语句块也有名字,我...

什么是“标识符”(什么是标识符的作用域)

标识符概述就是给类,接口,方法,变量等起名字时使用的字符序列组成规则英文大小写字母数字字符$和_注意事项不能以数字开头不能是Java中的关键字区分大小写标识符(常见命名规则)1、包名所有字母一律小写。...

Java初学者需要了解的10个语法细节

语法语法,语法就是语言的法则。汉语有汉语的语法,英语有英语的语法,如果不懂语法那你写出来的句子要不然就是错误,要不然就是生涩难懂。要学习和使用Java语言就要遵守Java语言的规则,要不然你的程序就不...

java 9 集合工厂方法:快速创建只读集合和“标识符优化”

新增的方法调用集合中静态方法 of(),可以将不同数量的参数传输到此工厂方法中。此功能可用于 Set 和 List,也 可用于 Map 的类似形式。此时得到 的集合,是不可变的:List.ofSet....