Analyze the following code: class Test { public static void main(String[] args)
ID: 3712154 • Letter: A
Question
Analyze the following code:
class Test {
public static void main(String[] args) {
A a = new A("test");
String s = a.s; } }
class A {
String s;
public A(String s) {
this.s = s;
}
}
Which of the following statements is(are) correct?
Question 7 options:
The program runs fine and prints "test".
The program compiles fine, but has a compilation error because instance variable s is private in class A.
The program compiles fine, but has a runtime error because instance variable s is private in class A.
Explanation / Answer
class Test {
public static void main(String[] args) {
A a = new A("test"); // object a contain "test"
String s = a.s; } } // s contain "test"
class A {
String s; // String s belongs to class A
public A(String s) {
this.s = s; // this.s contain test
}
}
It has no compilation error
No runtime error
The program runs fine and prints "test"
Option 1 correct