//本人初识java,想设计一个简单的程序,请大家帮我看看我的程序应该怎么改!谢谢!
//程序思路:初始一个变量a,并赋值为2,通过一个函数(作用是2加一个动态值,
//      在本程序中是10),得出一个新值(在本程序中应该得出12),最后打印输出
import java.math.*;
public class EasyTest { int a = 2;
int c; public int EasyTest(int a, int c) {
this.a=a;
this.c=c;
}
public EasyTest addmath(m){
EasyTest e =new EasyTest();
e.c=e.a+m;
return e;
}
public void print() {
System.out.println(c);
} public static void main(String[] args) {
EasyTest e2 = addmath(10);
e2.print();
}
}

解决方案 »

  1.   

    去掉  public int EasyTest(int a, int c) 这个构造函数,或者增加一个空的构造函数
      

  2.   

    EasyTest e =new EasyTest(); 
    调用无参数的构造函数,但是已经被你覆盖掉了
    解决方案如LS
      

  3.   

    public class test { 
    int a = 2; 
    public int addmath(int m){ 
    a+=m; 
    return a; 

    public void print(int m) { 
    System.out.println(addmath(m)); 

    public static void main(String[] args) { 
    test t=new test();
    t.print(20); 

    }
      

  4.   

    一旦你自己定义构造函数,默认的无参数构造函数就被弃用了,如果你要用到需要自己重新定义,方法如lss
      

  5.   


    int a = 2; int c = 0; public EasyTest(int a, int c) {
    this.a = a;
    this.c = c;
    } public EasyTest() { } public static EasyTest addmath(int m) {
    EasyTest e = new EasyTest();
    e.c = e.a + m;
    return e;
    } public void print() {
    System.out.println(c);
    } public static void main(String[] args) {
    EasyTest e2 = addmath(10);
    e2.print();
    }
      

  6.   

    import java.math.*;
    public class EasyTest {int a = 2;
    int c;public int EasyTest(int a, int c) {
    this.a=a;
    this.c=c;
    }
    public static EasyTest addmath(m){//静态声明
    EasyTest e =new EasyTest();
    e.c=e.a+m;
    return e;
    }
    public void print() {
    System.out.println(c);
    }public static void main(String[] args) {
    EasyTest e2 = EasyTest.addmath(10);//通过类名访问
    e2.print();
    }
    }
      

  7.   

    //按5楼和6楼的思想,我又重新整理了一下,最后还有一个问题没搞明白(见程序注释处),请大家帮忙指点一下:
    public class EasyTest { int a = 2; public static EasyTest addmath(int m) {//此处为什么必须要加上static????
    EasyTest e = new EasyTest();
    e.a += m;
    return e;
    } public void print() {
    System.out.println(a);
    } public static void main(String[] args) {
    EasyTest e2 = addmath(10);
    e2.print();
    }
    }
      

  8.   

    因为main是静态方法,所以他调用的addmath也要是静态方法。