在定义类中的方法时,如果在后面加上分号";",编译和执行都不会受影响,如下面代码中的class A中的print方法,无论有没有分号结果都是一样的,请问这是为什么?分号在这里起什么作用?请高手们帮忙解答下,谢谢!class A{
int x;
public A(int x){
this.print(x) ;
}
public void print(int x){
System.out.println("x="+x);
};
}
public class Test1{
public static void main(String args[]){
A a = new A(10) ;
}
}
int x;
public A(int x){
this.print(x) ;
}
public void print(int x){
System.out.println("x="+x);
};
}
public class Test1{
public static void main(String args[]){
A a = new A(10) ;
}
}
解决方案 »
- [求助]java端生成xml文件有比较成熟的架构吗?
- 朋友问我的问题,大家看看会不会。
- 求输入只允许汉字的正则表达式?
- 如果一个日期字符串"2005-06-09"如何传化成Date类型
- JTree的expansionListener针对某节点调用一次之后无法改变此节点的children,为什么?
- 关于serializable接口,在线等待
- j2ee,j2se是企业版与标准版有何不同???
- jdk1.4.0-beta3里带的那个java web start是干什么的?客户端还需要jre吗 ?
- 谁来解释一下这句话的意思?
- java现在有用吗?
- DispatchAction 中使用 synchronized 没有实现同步
- 用Java求整数是质子数
与下面的类似:
int a=5;;; 后两个都是多余的.
public void f() {
}
;
}
D:\>java Test.java
D:\>javap -c Test
Compiled from "Test.java"
public class Test extends java.lang.Object{
public Test();
Code:
0: aload_0
1: invokespecial #1; //Method java/lang/Object."<init>":()V
4: returnpublic void f();
Code:
0: return}public class Test {
public void f() {
}
}D:\>java Test.java
D:\>javap -c Test
Compiled from "Test.java"
public class Test extends java.lang.Object{
public Test();
Code:
0: aload_0
1: invokespecial #1; //Method java/lang/Object."<init>":()V
4: returnpublic void f();
Code:
0: return}