Instructions
I. What are the diagrams defined in the UML Standard. Give a one or two sentence description of each one.
II. Given the following code, how should the toString methods in the classes H2ClassA and H2ClassB be written to give the indicated output and take advantage of the natural toString method in H2ClassB?
1 importjava.util.ArrayList;
2
3 publicclass H2ClassA {
4 ArrayList list = newArrayList ();
5
6 publicstaticvoid main (String args []) {
7 H2ClassA y = new H2ClassA ();
8 int [] v = {4, 3, 7, 5, 99, 3};
9 for (int m: v)
10 y.list.add (new H2ClassB (m));
11 System.out.println (y);
12 } // end main
13
14 } // end class H2ClassA
15
16 class H2ClassB {
17 int x;
18 H2ClassB (int a) { x = a;}
19 } // end H2ClassB
OUTPUT:
4 3 7 5 99 3
III. How can the following code be corrected? Give at least two good answers.
1 publicclass H2ClassC {
2 H2ClassC (int a) {}
3 }// end class H2ClassC
4
5 class H2ClassD extends H2ClassC{
6 } // end class H2ClassD
IV. Why does the following code give a compiler error? How should it be fixed?
1 publicclass H2ClassE {
2 int x, y, z;
3
4 H2ClassE (int a) {
5 x = a;
6 this (5, 12);
7 }
8
9 H2ClassE (int b, int c) {
10 y = b;
11 z = c;
12 }
13 } // end class H2ClassE
V. What is wrong with the following declaration? How should it be fixed?
public static final intmyNumber = 17.36;
VI. What is wrong with the following code? How should it be fixed?
1 publicclass H2ClassG {
2 finalint x;
3
4 H2ClassG () {}
5 H2ClassG (int a) {x = a;}
6 }// end class H2ClassG
VII. What is wrong with the following code? How should it be fixed?
1 publicclass H2ClassH {
2 finalint x;
3
4 int H2ClassH () {
5 if (x == 7) return 1;
6 return 2;
7 }// end
8 } // end class H2ClassH
VII. What is wrong with the following code? x should be given a value of 24. What are two ways this can be legally accomplished?
1 publicclass H2ClassI {
2 finalint x;
3
4 publicstaticvoid main (String args []) {
5 H2ClassI h = new H2ClassI ();
6 h.x = 24;
7 }// end main
8 } // end class H2ClassI
IX. What is wrong with the following code? Give two effective ways to fix it.
1 importjavax.swing.*;
2 importjava.awt.event.*;
3
4 publicclass H2ClassJ extendsJFrame {
5 publicstaticfinallongserialVersionUID = 22;
6
7 public H2ClassJ () {
8 addMouseListener (newMouseListener () {
9 publicvoidmouseClicked (MouseEvent e) {}
10 });
11 } // end constructor
12
13 } // end class H2ClassJ
X. Why does the following code give a compiler warning? (Use javac -Xlint) How should it be fixed?
1 importjavax.swing.*;
2
3 publicclass H2ClassK {
4 String [] sa = {"a", "b", "c"};
5 JComboBoxjcbA = newJComboBox (sa);
6 } // end class H2ClassK