Java Programming - Objects and Collections - Discussion
Discussion Forum : Objects and Collections - Finding the output (Q.No. 3)
3.
What will be the output of the program?
package foo;
import java.util.Vector; /* Line 2 */
private class MyVector extends Vector
{
int i = 1; /* Line 5 */
public MyVector()
{
i = 2;
}
}
public class MyNewVector extends MyVector
{
public MyNewVector ()
{
i = 4; /* Line 15 */
}
public static void main (String args [])
{
MyVector v = new MyNewVector(); /* Line 19 */
}
}
Answer: Option
Explanation:
Option B is correct. The compiler complains with the error "modifier private not allowed here". The class is created private and is being used by another class on line 19.
Discussion:
3 comments Page 1 of 1.
Pratyush said:
5 years ago
If modifier will not private it's public.
Then the program will compile or not? Please explain.
Then the program will compile or not? Please explain.
Arnold01 said:
1 decade ago
Oh, I thought the reason is that top level classes within a package should only be public or package-private (no modifier)... and PRIVATE is only for member classes which makes the class invisible to the package level... which the compiler thinks will be a useless (unreachable) class for other classes.
Avinash 01 said:
1 decade ago
First error :chance of getting error in line number 15
because int is not declared
because int is not declared
Post your comments here:
Quick links
Quantitative Aptitude
Verbal (English)
Reasoning
Programming
Interview
Placement Papers