java语言基础之标识符和命名规则详解

 更新时间:2021年03月03日 10:22:13   作者:落地而死的大鸟  
这篇文章主要给大家介绍了关于java语言基础之标识符和命名规则的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

标识符

  • Java 对各种变量、方法和类等要素命名时使用的字符序列称为标识符
  • 技巧:凡是自己可以起名字的地方都叫标识符
  • 定义合法标识符规则:
  • 由26个英文字母大小写,0-9 ,_或 $ 组成 数字不可以开头。
  • 不可以使用关键字和保留字,但能包含关键字和保留字。
  • Java中严格区分大小写,长度无限制。
  • 标识符不能包含空格

下面是代码说明:(帮助大家理解一下每句话的意思)

class IdentifierTest{
  public static void main(String[] args){
  system.out.println("这是一个测试类名")
}
}
class Hello1_${
}
/*这是以字母开头的类名,符合命名规范*/
class 1Hello{
}
/*这里以数字开头明显是错误的,不符合命名规范*/

class static{
}
/*这里使用了java关键字开头明显是错误的,不符合命名规范*/
class static1{
}
/*假如这里使用了static1可不可以,当然是可以了,因为它不是关键字了*/

假如写成Static可不可以?思考一下!当然是可以的,因为关键字都是小写的。java语言是严格区分大小写的。

class Static{
}

为什么标识符不能包含空格?

看如下代码:

class abcdefg{
}
class abc defg{
}

第一个明显是正确的,第二个加了空格,那么类名到底叫做abcdefg还是abc或者defg。这里就懂了吧。大家可以尝试编译一下。

最后强调一下,如果不遵守以上的规则,编译不通过,字节码文件生成不了,更不要说运行了。

Java中的名称命名规范(如果不遵守如下的规范,编译可以通过;但是建议大家严格遵守 ,因为代码并不是给自己一个人看,更利于别人看懂和区分,而且是非常美观的)

  • 包名:多单词组成时所有字母都小写:xxxyyyzzz
  • 类名接口名:多单词组成时,所有单词的首字母大写:XxxYyyZzz
  • 变量名方法名:多单词组成时,第一个单词首字母小写,第二个单 词开始每个单词首字母大写:xxxYyyZzz
class IdentifierTest{
public static void main(String[] args){
int myNumber = 1001;
System.out.println(myNumber);
}
}

运行结果:

  • 常量名:所有字母都大写。多单词时每个单词用下划线连接: XXX_YYY_ZZZ

注意1:在起名字时,为了提高阅读性,要尽量有意义,“见名知意”。

class User{
}

注意2:java采用unicode字符集,因此标识符也可以使用汉字声明,但是不建议使用。

class IdentifierTest{
public static void main(String[] args){
int myNumber = 1002;
System.out.println(myNumber);
int 号码 = 1003;
System.out.println(号码);
}
}

运行结果:

总结

到此这篇关于java语言基础之标识符和命名规则的文章就介绍到这了,更多相关java标识符和命名规则内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Spring Boot启动过程(六)之内嵌Tomcat中StandardHost、StandardContext和StandardWrapper的启动教程详解

    Spring Boot启动过程(六)之内嵌Tomcat中StandardHost、StandardContext和Sta

    这篇文章主要介绍了Spring Boot启动过程(六)之内嵌Tomcat中StandardHost、StandardContext和StandardWrapper的启动教程详解,需要的朋友可以参考下
    2017-04-04
  • RocketMq消息队列之削峰详解

    RocketMq消息队列之削峰详解

    这篇文章主要介绍了RocketMq消息队列之削峰详解,MQ的主要特点为解耦、异步、削峰,本篇博客只是简单的记录RocketMQ削峰用法,用于减少数据库压力的业务场景,需要的朋友可以参考下
    2023-09-09
  • Springboot如何使用Aspectj实现AOP面向切面编程

    Springboot如何使用Aspectj实现AOP面向切面编程

    这篇文章主要介绍了Springboot如何使用Aspectj实现AOP面向切面编程,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-01-01
  • Spring Boot开发Web应用详解

    Spring Boot开发Web应用详解

    这篇文章主要介绍了Spring Boot开发Web应用详解,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-04-04
  • Java线程池中的工作线程Worker类源码解析

    Java线程池中的工作线程Worker类源码解析

    这篇文章主要介绍了Java线程池中的工作线程Worker类源码解析,线程池中的工作线程是通过内部类Worker表示的,Worker继承自AbstractQueueSynchronizer,可以实现同步器的功能,需要的朋友可以参考下
    2023-12-12
  • Java实战之网上书店管理系统的实现

    Java实战之网上书店管理系统的实现

    本文将利用Java语言实现网上书店管理系统。其功能一般包括:图书信息管理、用户信息管理、图书购买、图书订单查看、图书添加、图书维护等等,感兴趣的可以了解一下
    2022-06-06
  • Java报错:Error:java: 程序包org.springframework.boot不存在解决办法

    Java报错:Error:java: 程序包org.springframework.boot不存在解决办法

    建完springboot项目时,点击启动,有可能会报错,下面这篇文章主要给大家介绍了关于Java报错:Error:java: 程序包org.springframework.boot不存在的解决办法,需要的朋友可以参考下
    2024-02-02
  • SpringMVC框架REST架构体系原理分析

    SpringMVC框架REST架构体系原理分析

    REST:Representational State Transfer,资源表现层状态转换,是目前⽐较主流的⼀种互联网软件架构,它结构清晰、标准规范、易于理解、便于扩展
    2021-09-09
  • servlet的常见注册方式总结

    servlet的常见注册方式总结

    servlet大家都不陌生,当开发 Web 应用程序时,注册 Servlet 是一个常见的任务,本文将介绍一些常见的 Servlet 注册方法,希望对大家有所帮助
    2023-10-10
  • 关于jdk环境变量配置以及javac不是内部或外部命令的解决

    关于jdk环境变量配置以及javac不是内部或外部命令的解决

    这篇文章主要介绍了关于jdk环境变量配置以及javac不是内部或外部命令的解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-01-01

最新评论