Given:
1.
2. public class Hi {
3. void m1() { }
4. protected void m2() { }
5. }
6. class Lois extends Hi {
7. // insert code here
8. }
Which four code fragments, inserted independently at line 7, will compile? (Choose four.)
A.
public void m1() { }
B.
protected void m1() { }
C.
private void m1() { }
D.
void m2() { }
E.
public void m2() { }
F.
protected void m2() { }
G.
private void m2() { }
Explanation:
A:
compiled successfullyB:
compiled successfullyC:
Main.java:7: m1() in Lois cannot override m1() in Hi; attempting to assign weaker access privileges; was package
private void m1() { }
^
1 errorD:
Main.java:7: m2() in Lois cannot override m2() in Hi; attempting to assign weaker access privileges; was protected
void m2() { }
^
1 errorE:
compiled successfullyF:
compiled successfullyG:
Main.java:7: m2() in Lois cannot override m2() in Hi; attempting to assign weaker access privileges; was protected
private void m2() { }
^
1 error
A,B,E & F