Assume the existence of a Window class with a constructor that accepts two integer parameters containing the width and height of the window (in that order). Assume a subclass TitledWindow has been defined that has two instance variables : a string named text for the text of the title and, an integer, titleBarHeight for the height of the title bar. Write a constructor for TitledWindow that accepts four parameters: two integers containing the width and height (which are passed up to the Window constructor ), and, a string and integer which are used to initialize the TitledWindow instance variables . The height of the title bar should be ‘clamped’ by the constructor to one half the height of the window– i.e., if the height of the title bar passed into the constructor is greater than one half the specified height of the window, it should be set to one half the height of the window.
LANGUAGE: JAVA
CHALLENGE:
Assume the existence of a Window class with a constructor that accepts two integer parameters containing the width and height of the window (in that order).
Assume a subclass TitledWindow has been defined that has two instance variables :
a string named text for the text of the title and,
an integer, titleBarHeight for the height of the title bar.
Write a constructor for TitledWindow that accepts four parameters:
two integers containing the width and height (which are passed up to the Window constructor ), and,
a string and integer which are used to initialize the TitledWindow instance variables .
The height of the title bar should be ‘clamped’ by the constructor to one half the height of the window– i.e., if the height of the title bar passed into the constructor is greater than one half the specified height of the window, it should be set to one half the height of the window.
SOLUTION:
TitledWindow(int width, int height, String text, int titleBarHeight) { super(width, height); this.text = text; if (titleBarHeight > height / 2) titleBarHeight = height / 2; this.titleBarHeight = titleBarHeight; }