What will happen if you try to compile and run this program?

class Box {
    int b,w;
    void Box(int b, int w) {
         this.b = b;  
         this.w = w;

public class MyBox extends Box {
    MyBox() {
         super(10, 15);
         System.out.println(b + "," + w);

     static public void main(String args[]) {
           MyBox box = new MyBox();
The program does not compile because there is no matching constructor in the base class to call super(10,15) of the subclass constructor.
void Box (int b, int w) is a method and not a constructor because of specified return type.
In the description of the method main() there is no error: static and public can appear in any order.

Следи за CodeGalaxy

Мобильное приложение Beta

Get it on Google Play
Обратная Связь
Продолжайте изучать
тесты по Java
Зарегистрируйся сейчас
или Подпишись на будущие тесты