Constructor problem
-
I have a problem with constructors ... I never understood how they work. At Caine c=new Caine(); Animal c1=new Caine(); Pisica p=new Pisica(); Error: Constructor Caine in Caine class cannot be applied to given class
package test2;
public class Test2 {public static void main(String\[\] args) { ListaAnimale lista= new ListaAnimale(); Caine c=new Caine(); Animal c1=new Caine(); Pisica p=new Pisica(); lista.adauga(c); lista.adauga(p); c.faceZgomot(); }
}
class ListaAnimale{
private Animal [] animale = new Animal[5];
private int index=0;
public void adauga(Animal a){
if(index -
I have a problem with constructors ... I never understood how they work. At Caine c=new Caine(); Animal c1=new Caine(); Pisica p=new Pisica(); Error: Constructor Caine in Caine class cannot be applied to given class
package test2;
public class Test2 {public static void main(String\[\] args) { ListaAnimale lista= new ListaAnimale(); Caine c=new Caine(); Animal c1=new Caine(); Pisica p=new Pisica(); lista.adauga(c); lista.adauga(p); c.faceZgomot(); }
}
class ListaAnimale{
private Animal [] animale = new Animal[5];
private int index=0;
public void adauga(Animal a){
if(indexCaine c=new Caine(); // That constructor does not exist
Animal c1=new Caine(); // That constructor does not exist
Pisica p=new Pisica();// That constructor does not existYour constructors are demanding some values:
public Caine(String n, int a){ // String and Int is required to initalize
super(n,a);
}so your main would initalize those as following:
Caine c=new Caine("String", 0);
Animal c1=new Caine("anotherString", 1);
Pisica p=new Pisica("oneMoreString", 2);Constructors are not that complicated. it's just some OOP as in any other method that you write. http://docs.oracle.com/javase/tutorial/java/javaOO/constructors.html[^]
regards Torsten I never finish anyth...
-
I have a problem with constructors ... I never understood how they work. At Caine c=new Caine(); Animal c1=new Caine(); Pisica p=new Pisica(); Error: Constructor Caine in Caine class cannot be applied to given class
package test2;
public class Test2 {public static void main(String\[\] args) { ListaAnimale lista= new ListaAnimale(); Caine c=new Caine(); Animal c1=new Caine(); Pisica p=new Pisica(); lista.adauga(c); lista.adauga(p); c.faceZgomot(); }
}
class ListaAnimale{
private Animal [] animale = new Animal[5];
private int index=0;
public void adauga(Animal a){
if(indexAt Caine c=new Caine(); Animal c1=new Caine(); Pisica p=new Pisica(); These 3 statements wont work. As you can see, your program does not have no-arg constructor. when you dont write any constructor, then compiler will include a default no-arg constructor. If you are explicitly writing a constructor then default constructor wont be added. You have to write your own default no-arg constructor. Then the above lines will run successully.
Regards Vipul
-
I have a problem with constructors ... I never understood how they work. At Caine c=new Caine(); Animal c1=new Caine(); Pisica p=new Pisica(); Error: Constructor Caine in Caine class cannot be applied to given class
package test2;
public class Test2 {public static void main(String\[\] args) { ListaAnimale lista= new ListaAnimale(); Caine c=new Caine(); Animal c1=new Caine(); Pisica p=new Pisica(); lista.adauga(c); lista.adauga(p); c.faceZgomot(); }
}
class ListaAnimale{
private Animal [] animale = new Animal[5];
private int index=0;
public void adauga(Animal a){
if(indexHi, you can learn "All About Constructors in Java" from here. It is the best and simple one.