Declaration and Access Control
Determine output:class A{{System.out.print("b1 ");}public A(){System.out.print("b2 ");}}class B extends A{static{System.out.print("r1 ");}public B(){System.out.print("r2 ");}{System.out.print("r3 ");}static{System.out.print("r4 ");}}public class Test extends B{public static void main(String[] args){System.out.print("pre ");new Test();System.out.println("post ");}}

r1 r4 pre b1 b2 r3 r2 post
Compilation fail
r1 r4 pre b1 b2 post r3 r2
pre r1 r4 b1 b2 r2 r3 post
r1 r4 pre b1 b2 post

ANSWER DOWNLOAD EXAMIANS APP

Declaration and Access Control
Determine output:public class InitDemo{static int i = demo();static{ System.out.print(i); }InitDemo(){System.out.print("hello1");}public static void main(String... args){ System.out.print("Hello2");} static int demo(){ System.out.print("InsideDemo");return 10;}}

IllegalArgumentException is thrown at runtime.
Hello2 InsideDemo 10
InsideDemo 10 Hello2 hello1
Compilation error.
InsideDemo 10 Hello2

ANSWER DOWNLOAD EXAMIANS APP

Declaration and Access Control
Suppose a class has public visibility. In this class we define a protected method. Which of the following statements is correct?

In a class, you cannot declare methods with a lower visibility than the visibility of the class in which it is defined.
This method is accessible from within the class itself and from within all classes defined in the same package as the class itself.
This method is only accessible from inside the class itself and from inside all subclasses.
From within protected methods you do not have access to public methods.

ANSWER DOWNLOAD EXAMIANS APP