Я новичок в java, и у меня проблема с моим кодом. Я пытаюсь вызвать конструктор суперкласса из конструктора подкласса. Хотя я могу это сделать super, но я стараюсь другой метод, создав объект суперкласса в конструкторе подкласса, который вызовет Class A constructor
.Вызов конструктора из подкласса
class A
{
private int x;
A()
{
System.out.println("INISDE A");
}
A(int h)
{
System.out.println("a");
x = h;
}
}
class B extends A
{
int g, add;
B(int j, int h)
{
A a = new A(h);
g = j;
add = g + h;
}
void add()
{
System.out.println("SUM" + add);
}
}
public class Ja
{
public static void main(String[] args) {
// TODO code application logic here
B v = new B(1, 2);
v.add();
}
}
Проблема я получаю выход
INISDE A
a
SUM3
Вместо
a
SUM3
Это означает, что он также использует A()
.Но почему? Я дал ему параметры
Я бы рекомендовал вам использовать IDLE с форматированием кода. – Christian
... и используйте значащие имена. –
Где весело в этом?!? –