日期:2014-05-20 浏览次数:20956 次
public class Gouzao1
{
  public static void main(String[] args)
  {
    Shili1 L1=new Shili1();
    L1.Shili1();
    Shili1 L2=new Shili1(5,"sdf");//加入这个后就出错了
  
   
  }
}
class Shili1
{
  int a;
  String b;
  String c;
  void Shili1()
  {
    System.out.println("我是没有参数的哦!");
  }
  void Shili1(int a,String b)
  {
    this.a=a;
    this.b=b;
  }
  void Shili1(int a,String b,String c)
  {
    this.b=b;
    this.c=c;
  }
}
 
public Shilil(int a,String s)
{
  //...
}
------解决方案--------------------
Shili1 L1=new Shili1();//没有明确定义构造函数,调用默认构造函数
   L1.Shili1();
   Shili1 L2=new Shili1(5,"sdf");//加入这个后就出错了 ----你根本没有定义这个参数的构造函数。
------解决方案--------------------
你定义的是三个方法  而不是重载的三个构造函数
第一个调用的是默认的构造函数
而你并没有定义其他的构造函数
------解决方案--------------------
构造方法是没有返回值的,不然会被认为是普通方法
所以应该是
public class Gouzao1
{
 public static void main(String[] args)
 {
   Shili1 L1=new Shili1();
   L1.Shili1();
   Shili1 L2=new Shili1(5,"sdf");//加入这个后就出错了
    
   
 }
}
class Shili1
{
 int a;
 String b;
 String c;
  void Shili1()
 {
   System.out.println("我是没有参数的哦!");
 }
  Shili1(int a,String b)
 {
   this.a=a;
   this.b=b;
 }
  Shili1(int a,String b,String c)
 {
   this.b=b;
   this.c=c;
 }
}