1. What is wrong with the following program?
1 public class MyClassA {
2 int v = 12;
3
4 public MyClassA (int pV) {
5 v = pV;
6 }
7
8 public static void main (String args []) {
9 MyClassA m = new MyClassA ();
10 } // end main
11 } // end class MyClassA
2. What is wrong with the following program?
1 public class MyClassB {
2 int v = 12;
3
4 public void MyClassB (int pV) {
5 v = pV;
6 }
7
8 public static void main (String args []) {
9 MyClassB m = new MyClassB (23);
10 } // end main
11 } // end class MyClassB
3. What is wrong with the following program?
1 public class MyClassD {
2 public static void main (String args []) {
3 MyClassC m = new MyClassC (23);
4 } // end main
5 } // end class MyClassD
6
7 public class MyClassC {
8 int v = 12;
9
10 public MyClassC (int pV) {
11 int v = pV;
12 }
13
14 } // end class MyClassC
4. What is wrong with the following program?
1 public class MyClassD {
2 public static void main (String args []) {
3 MyClassC m = new MyClassC (23);
4 } // end main
5 } // end class MyClassC
6
7 class MyClassC {
8 int v = 12;
9
10 private MyClassC (int pV) {
11 v = pV;
12 }
13
14 } // end class MyClassC
5. Given all the problems identified in problems 1 through 4, explain in detail why the following code works, ie, compiles without errors or warnings.
1 public class MyClassD {
2 public static void main (String args []) {
3 MyClassC m = new MyClassC (23, true);
4 } // end main
5 } // end class MyClassD
6
7 class MyClassC {
8 int v = 12;
9
10 public MyClassC (int x, boolean b) {
11 this (x);
12 }
13
14 private MyClassC (int pV) {
15 v = pV;
16 }
17
18 } // end class MyClassC
6. Explain why the following class hierarchy is not reasonable:
• DefenseDepartment
o General
Private
7. Give at least one example of a reasonable field for each of the following classes in the following class hierarchy. Be sure that the field is at the right level in the hierarchy.
• Vehicle
o Car
o Airplane
Passenger
Fighter
Bomber
o SpaceShip
8. Give at least one example of a reasonable method for each of the following classes in the following class hierarchy. Be sure that the method is at the right level in the hierarchy. Constructors, getters and setters don't count for this problem.
• Vehicle
o Car
o Airplane
Passenger
Fighter
Bomber
o SpaceShip
9. Are a Private and a Platoon in an encapsulation or an inheritance relationship?
10. Present reasonable parent and child classes for the class Tree (the kind with leaves). Give a short explanation for why the classes you are proposing are in good parent-child relationships.
11. To verify that a string of characters belongs to a language defined by a grammar, we must create a parse tree that shows that the string can be generated by the grammar.
Consider the following grammar:
< list > -> < item > , < list > | < item >
< item > -> < left > < item > < right > | < left > < right >
< left > -> A| B | C
< right > -> x | y | z
Choose a string that is in this language and create a parse tree that demonstrates that your claim is true. Identify another string that contains some of these terminals symbols but is not in the language.