Home Java Java-tips Oop Constructors Constructor Chaining Exercise 1

Ask Questions?

View Latest Questions

Advertisement


 
 

Constructor Chaining Exercise 1
Posted on: July 26, 2006 at 12:00 AM
A this call to another constructor in the same class.

Java Notes

Constructor Chaining Exercise 1

Name _______________________________

The first line of every constructor must be either

  • A this call to another constructor in the same class.
  • A super call to a parent constructor.

If no constructor call is written as the first line of a constructor, the compiler automatically inserts a call to the parameterless superclass constructor.

Question

What is printed by this program?

// File   : ConstructorChain.java
// Purpose: Illustrate constructor chaining.
// Author : Fred Swartz
// Date   : 5 May 2003

class ConstructorChain {
    public static void main(String[] args) {
        Child c = new Child();
    }
}

class Child extends Parent {
    Child() {
        System.out.println("Child() constructor");
    }
}

class Parent extends Grandparent {
    Parent() {
        this(25);
        System.out.println("Parent() constructor");
    }
    
    Parent(int x) {
        System.out.println("Parent(" + x + ") constructor");
    }
}
class Grandparent {
    Grandparent() {
        System.out.println("Grandparent() constructor");
    }
}

You can check your answer with Constructor Chaining Answer.

Copyleft 2003 Fred Swartz MIT License
Advertisement


DMCA.com