Назад к вопросам
JuniorТеорияЧасто
Что произойдёт при компиляции и запуске программы?
public class Main {
public static void main(String[] args) {
Shape s = new Shape();
System.out.print(s.sides());
System.out.print(s.area());
}
}
abstract class Shape {
int sides() { return 4; }
abstract int area();
}Не скомпилируется
- Ждать, что сначала напечатается
4:newдля абстрактного класса — ошибка компиляции, поэтому программа не запускается и ничего не печатает. - Ждать
0отarea(): у абстрактного метода нет тела и нет результата по умолчанию, а у его класса не бывает собственных объектов.
- Как изменить программу, чтобы она печатала площадь квадрата?
- Можно ли создать через
newабстрактный класс без абстрактных методов?