qjbagu 2010-05-11 16:33
浏览 254
已采纳

构造方法问题

类ClassA:
[code="java"]
public class ClassA {
private int i;
public ClassA(int i) {
this.i = i;
}
public void printMe() {
System.out.println(i);
}
System.out.(1)println(i(2));//这里有两个错误。
}
[/code]
类ClassB:
[code="java"]
public class ClassB {
public static void main(String[] args) {
ClassA ca = new ClassA(9);
ca.printMe();
}
}
[/code]
这里有两个错误,如上面所示:
1:标记上有语法错误,错误放置了构造。
2:标记"i"上有语法错误,在此标记之后应为VariableDeclaratorId。
为什么会出现这两个错误呢,为什么参数传递过去后,会出现这种错误。

  • 写回答

6条回答 默认 最新

  • 拽拽的初行者 2010-05-11 16:57
    关注

    [quote]为什么只能写在方法中、构造方法中、代码块、静态代码块中使用i[/quote]

    纠正几点:

    1、在静态代码块中,不能使用实例变量(你的ClassA中的i是实例变量)

    2、任何语句,处理声明语句,都必须在一个方法块中。这是语法规定

    [quote]System.out.(1)println(i(2));这句也无法执行的原因啊。为什么不能那样写啊?
    [/quote]

    这么古怪的写法.....

    System类中有个out对象。out对象有个println方法。

    System.out.(1)println() 的写法,不合语法!

    i(2) 的写法,更不合语法。 因为ClassA中没有 i(int param)的方法。

    建议,看看基础语法。。。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(5条)

报告相同问题?

悬赏问题

  • ¥30 vmware exsi重置后登不上
  • ¥15 易盾点选的cb参数怎么解啊
  • ¥15 MATLAB运行显示错误,如何解决?
  • ¥15 c++头文件不能识别CDialog
  • ¥15 Excel发现不可读取的内容
  • ¥15 关于#stm32#的问题:CANOpen的PDO同步传输问题
  • ¥20 yolov5自定义Prune报错,如何解决?
  • ¥15 电磁场的matlab仿真
  • ¥15 mars2d在vue3中的引入问题
  • ¥50 h5唤醒支付宝并跳转至向小荷包转账界面