JAVA类名与方法名以数字开头的问题

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JAVA类名与方法名以数字开头的问题相关的知识,希望对你有一定的参考价值。

最近在试用润乾报表工具,他的50次预览48小时重启搞得我很蛋疼,于是反编译了下他的Jar包,于是发现了下面很诡异的现象。类名与方法名竟然是用数字打头的。有那个大神知道这是如此做到的么?本人小白,望不吝赐教

参考技术A 代码编写规范目的:能够在编码过程中实现规范化,为以后的程序开发中养成良好的行为习惯。
代码编写规范使用范围:J2EE项目开发。
包命名规范:
目的:包的命名规范应当体现出项目资源良好的划分

servlet类所在包命名规范:公司名称.开发组名称.项目名称.web.servlet
例如:net.linkcn.web.servlet

自定义标签类所在包命名规范:公司名称.开发组名称.项目名称.web.tags
例如:net.linkcn.web.tags

过滤器类所在包命名规范:公司名称.开发组名称.项目名称.web.filter
例如:net.linkcn.web.filter

Action类所在包命名规范:公司名称.开发组名称.项目名称.web.struts.action
例如:net.linkcn.web.struts.action

ActionForm类所在包命名规范:公司名称.开发组名称.项目名称.web.struts.form
例如:net.linkcn.web.struts.form

Javabean所在包命名规范:公司名称.开发组名称.项目名称.web.struts.service.impl
例如:net.linkcn.web.service.impl

Javabean实现接口命名规范:公司名称.开发组名称.项目名称.web.service
例如:net.linkcn.web.service

DAO类所在包命名规范:公司名称.开发组名称.项目名称.dao.impl
例如:net.linkcn.dao.impl

DAO类所实现的接口在包中命名规范:公司名称.开发组名称.项目名称.dao
例如:net.linkcn.dao

POJO类与hbm文件所在包命名规范:公司名称.开发组名称.项目名称.dao.hbm
例如:net.linkcn.dao.hbm

全局公共类、接口类所在包命名规范:公司名称.开发组名称.项目名称.global
例如:net.linkcn.global

全局工具类所在包命名规范:公司名称.开发组名称.项目名称.util
例如:net.linkcn.util
参考技术B java是编程语言里比较难学的一门,如果有心从事编程方向的工作,最好到专业机构学习并有更多的项目实践,更贴近市场,这样更有利于将来的发展。 参考技术C 反编译的问题吧,。 或者是你把你的 字体调下 可能是L 有的字体l和1一个样追问

不是这个问题。我用JAVA-Decompiler跟jclass-lib看的结果都一样,而且文件里既有L开头的文件也有1开头的文件。本来我想用eclipse修改替换class的,结果直接提示类名不合法

本回答被提问者采纳

Java标识符和关键字

Java标识符和关键字

Java标识符

Java标识符定义

  1. 包名、类名、方法名、参数名、变量名等,这些符号被称为标识符。

  2. 标识符可以由字母、数字、下划线(_)和美元符号($)组成

  3. 标识符不能以数字开头,不能是java中的关键字。

Java标识符规则

  1. 包名、类名、方法名、参数名、变量名等,这些符号被称为标识符。

  2. 标识符可以由字母、数字、下划线(_)和美元符号($)组成

  3. 标识符不能以数字开头,不能是java中的关键字。

Java关键字

  1. 下面列出了 Java 关键字。这些保留字不能用于常量、变量、和任何标识符的名称。

  2. 所有的关键字都是小写

  3. 程序中的标识符不能以关键字命名

  4. const和goto是保留字关键字,虽然在java中还没有任何意义,但在程序中不能用来作为自定义的标识符。

  5. true、false和null不属于关键字,它们是一个单独标识类型,不能直接使用

Java关键字按用途分组

  1. 用于数据类型。
    用于数据类型的关键字有 boolean、byte、char、 double、 false、float、int、long、new、short、true、void、instanceof。

  2. 用于语句。
    用于语句的关键字有break、case、 catch、 continue、 default 、do、 else、 for、 if、return、switch、try、 while、 finally、 throw、this、 super。

  3. 用于修饰
    用于修饰的关键字有 abstract、final、native、private、 protected、public、static、synchronized、
      transient、 volatile。

  4. 用于方法、类、接口、包和异常。
    用于方法、类、接口、包和异常的关键字有 class、 extends、 implements、interface、 package、import、throws。

  5. 还有些关键字,如cat、 future、 generic、innerr、 operator、 outer、rest、var等都是Java保留的没有意义的关键字。
    另外,Java还有3个保留字:true、false、null。它们不是关键字,而是文字。包含Java定义的值。和关键字一样,它们也不可以作为标识符使用。

关键字含义关键字含义
abstract 表明类或者成员方法具有抽象属性 assert 断言,用来进行程序调试
boolean 声明布尔类型的关键字 break 提前跳出一个块
byte 字节类型 case 用在switch语句之中,表示其中的一个分支
catch 用在异常处理中,用来捕捉异常 char 字符类型
class 声明一个类 const 保留关键字,没有具体含义
continue 回到一个块的开始处 default 默认,例如,用在switch语句中,表明一个默认的分支。Java8 中也作用于声明接口函数的默认实现
do 用在do-while循环结构中 double 双精度浮点数类型
else 用在条件语句中,表明当条件不成立时的分支 enum 枚举
extends 表明一个类型是另一个类型的子类型。对于类,可以是另一个类或者抽象类;对于接口,可以是另一个接口 final 用来说明最终属性,表明一个类不能派生出子类,或者成员方法不能被覆盖,或者成员域的值不能被改变,用来定义常量
finally 用于处理异常情况,用来声明一个基本肯定会被执行到的语句块 float 单精度浮点数类型
for 一种循环结构的引导词 goto 保留关键字,没有具体含义
if 条件语句的引导词 implements 表明一个类实现了给定的接口
import 表明要访问指定的类或包 instanceof 用来测试一个对象是否是指定类型的实例对象
int 整数类型 interface 接口
long 长整数类型 native 用来声明一个方法是由与计算机相关的语言(如C/C++/FORTRAN语言)实现的
new 用来创建新实例对象 package
private 私用模式 protected 保护模式
public 共用模式 return 从成员方法中返回数据
short 短整数类型 static 表明具有静态属性
strictfp 用来声明FP_strict(单精度或双精度浮点数)表达式遵循IEEE 754算术规范 super 表明当前对象的父类型的引用或者父类型的构造方法
switch 分支语句结构的引导词 synchronized 表明一段代码需要同步执行
this 指向当前实例对象的引用 throw 抛出一个异常
throws 声明在当前定义的成员方法中所有需要抛出的异常 transient 声明不用序列化的成员域
try 尝试一个可能抛出异常的程序块 void 声明当前成员方法没有返回值
volatile 表明两个或者多个变量必须同步地发生变化 while 用在循环结构中

以上是关于JAVA类名与方法名以数字开头的问题的主要内容,如果未能解决你的问题,请参考以下文章