среда, 15 августа 2012 г.

Конструкторы

Что выведет программа?

class Test {
    public static void main(String[] args) {
        Devil dev = new Boast(1);
    }
}

class Boast extends Devil 
{
    public Boast(){System.out.print("boast ");}
    public Boast(int i)
    {}
}

class Devil
{
    public Devil(){System.out.print("devil ");}
    public Devil(int i)
    {}  
}

Ответ

devil
При создании объекта, всегда вызываются конструкторы по умолчанию у родителей, начиная с самого старшего.
Если в конструкторе вызывается конструктор родителя, то конструктор по умолчанию родителя не вызывается

Комментариев нет:

Отправить комментарий