Question 1.
Read this piece of code
carefully
if("String".toString() == "String")System.out.println("Equal");elseSystem.out.println("Not Equal");
Answers
- the code will compile an print “Equal”.
- the code will compile an print “Not Equal”.
- the code will cause a compiler error.
Question 2.
Read this piece of code
carefully
if(" String ".trim() == "String")System.out.println("Equal");elseSystem.out.println("Not Equal");
Answers
- the code will compile an print “Equal”.
- the code will compile an print “Not Equal”.
- the code will cause a compiler error
Question 3.
Read the code below. Will be the result of attempting to compile and run the
code below.
public class AQuestion
{
public void method(Object o)
{
System.out.println("Object
Verion");}
public void method(String s)
{
System.out.println("String Version");
}
public static void main(String args[])
{
AQuestion question = new AQuestion();
question.method(null);
}
}
Answers
- The code does not compile.
- The code compiles cleanly and shows “Object Version”.
- The code compiles cleanly and shows “String Version”
- The code throws an Exception at Runtime.
Question 4.
Read the code below. Will be the result of attempting to compile and run the
code below.
public class AQuestion
{
public void method(StringBuffer sb)
{
System.out.println("StringBuffer
Verion");}
public void method(String s)
{
System.out.println("String Version");
}
public static void main(String args[])
{
AQuestion question = new AQuestion();
question.method(null);
}
}
Answers
- The code does not compile.
- The code compiles cleanly and shows “StringBuffer Version”.
- The code compiles cleanly and shows “String Version”
- The code throws an Exception at Runtime.
Question 5.
Read the following code below.
public interface AQuestion
{
public abstract void someMethod() throws
Exception;
}
A Class implementing this interface should
- Necessarily be an abstract class.
- Should have the method public abstract void someMethod();
- Should have the method public void someMethod() which has to throw an
exception which is a subclass of java.lang.Exception. - Should have the method public void someMethod() which need not throw an
Exception.
Question 6.
An Interface can never be private
or protected.
Answers
True
False
Question 7.
A Vector class in jdk 1.2
- is public
- is final
- implements java.util.List
- is serializable
- has only One constructor
Question 8.
A String Class
- is final
- is public
- is serializable
- has a constructor which takes a StingBuffer Object as an Argument
Question 9.
public interface AQuestion
{
void someMethod();
}
The class which implements AQuestion
- Should have someMethod which must necessarily be public.
- Should have someMethod which could be “friendly” or public
- Should have someMethod which should not throw any checked exceptions.
- Should have someMethod which cannot be sychronized as sychronized is not in
the signature of the interface defination
Question 10.
public class AQuestion
{
private int i = j;
private int j = 10;
public static void main(String args[])
{
System.out.println((new AQuestion()).i);
}
}
Answers
- Compiler error complaining about access restriction of private variables of
AQuestion. - Compiler error complaining about forward referencing.
- No error – The output is 0;
- No error – The output is 10;
Question 11.
public class AQuestion
{
private int i
= giveMeJ();
private int j
= 10;
private int giveMeJ()
{
return j;
}
public static void
main(String args[])
{
System.out.println((new AQuestion()).i);
}
}
Answers
- Compiler error complaining about access restriction of private variables of
AQuestion. - Compiler error complaining about forward referencing.
- No Compilation error – The output is 0;
- No Compilation error – The output is 10;
Question 12.
public class AQuestion
{
public static
void main(String args[])
{
System.out.println("Before Try");
try
{
}
catch(Throwable t)
{
System.out.println("Inside Catch");
}
System.out.println("At the End");
}
}
- Compiler error complaining about the catch block, where no Throwable object
can ever be thrown. - Compiler error – Throwable Object can not be caught, only Exceptions must be
caught. - No compiler error. The lines “Before Try” and “At the end” are printed on
the screen.
Question 13.
public class AQuestion
{
public static void main(String args[])
{
System.out.println("Before
Try");try
{
}
catch(java.io.IOException
t){
System.out.println("Inside Catch");}
System.out.println("At
the End");}
}
- Compiler error complaining about the catch block where no IOException object
can ever be thrown. - Compiler error – IOException not found. It must be imported in the first
line of the code. - No compiler error. The lines “Before Try” and “At the end” are printed on
the screen.
Question 14.
The class java.lang.Exception
i.
Is public
ii.
Extends
Throwable
iii.
Implements
Throwable
iv.
Is serializable
Question 15.
Read this piece of code
carefully
if("String".trim() == "String".trim())
System.out.println("Equal");
else
System.out.println("Not Equal");
Answers
- the code will compile an print “Equal”.
- the code will compile an print “Not Equal”.
- the code will cause a compiler error
Question 16.
Read this piece of code
carefully
if( "STRING".toUpperCase() == "STRING")
System.out.println("Equal");
else
System.out.println("Not Equal");
Answers
- the code will compile an print “Equal”.
- the code will compile an print “Not Equal”.
- the code will cause a compiler error
Question 17.
The following lines of code
byte b = 0;
b += 1;
- results in b having the value 1.
- causes a compiler error.
- will require a cast (byte) before 1.
Question 18.
The following express
char
c = -1;
- will cause a compiler error as the range of character is between 0 and
2^16 – 1. Will request for an explicit cast. - will not cause a compiler error and c will have the value -1;
- c will not represent any ascii character.
- c will still be a unicode character.
Question 19.
Which of the following statements
are true?
- A method can throw an Exception
- A method can return an Exception
Question 20.
All the wrapper classes
(Integer, Boolean, Float, Short, Long, Double and Character)
- are public
- are serializable
- are immutatable
- extend java.lang.Number
- are final
Question 21.
Read this piece of code
carefully
if(“String”.substring(0) == “String”)
System.out.println("Equal");
else
System.out.println("Not Equal");
Answers
- the code will compile an print “Equal”.
- the code will compile an print “Not Equal”.
- the code will cause a compiler error
Question 22.
Read this piece of code
carefully
if(“String”.substring(0,6) == “String”)
System.out.println("Equal");
else
System.out.println("Not Equal");
Answers
- the code will compile an print “Equal”.
- the code will compile an print “Not Equal”.
- the code will cause a compiler error
Question 23.
Read this piece of code
carefully
if(“String”.replace(‘t’,’t’) == “String”)
System.out.println("Equal");
else
System.out.println("Not Equal");
Answers
- the code will compile an print “Equal”.
- the code will compile an print “Not Equal”.
- the code will cause a compiler error
Question 24.
An Anonymous Inner class
- Does not have a constructor
- Can implement an interface
- Can extend a non-final Class
- Can implement an interface and extend a non-final class (at the same
time).
Question 25.
public class A
{
private void method1() throws Exception
{
throw new RuntimeException();
}
public void method2()
{
try
{
method1();
}
catch(RuntimeException e)
{
System.out.println("Caught
Runtime Exception");}
catch(Exception e)
{
System.out.println("Caught
Exception");}
}
public static void main(String args[])
{
A a = new A();
a.method2();
}
}
The above lines of code –
- will not compile.
- will compile and show – “Caught Runtime Exception”.
- will compile and show – “Caught Exception”.
- will compile and show both the messages one after another in the order
they appear.
Question 26.
public XXXX extends something1, something2
- XXX should be an interface,something1 and something2 need not, for the
expression to be legal - XXX should be a class, something1 and something2 must be interfaces for the
expression to be legal. - XXX, something1 and something2 must be interfaces for the expression to be
legal. - The above statement is alway illegal in Java as multiple inheritance is not
supported.
Question 27.
public class ADirtyOne
{
char a = '\u000A';
}
An attempt to compile the above class
- will complete successfully.
- will not compile as 0x000A is out of range for unicode charaters.
- will complain about illegal character assignment
- will compile but will cause a runtime error in accessing the
variable.
Question 28.
public class ADirtyOne
{
//char a = '\u000A';
}
An attempt to compile the above class
- will complete successfully.
- will compile sucessfully but with a warning message.
- will not compile – complains on an invalid expression.
Question 29.
public class AnotherDirtyOne
{
private final int i =10;
private byte k = i;
}
An attempt to compile and run the above code will
- Cause a compilation error due to invalid assignment ( int to byte)
and will request for an explicit cast to be done on i [
k=(byte) i ]. - Compilation occurs with a warning message – suggesting that the accuracy
of k is questionable - Compilation will occur cleanly without any warning message.
- Runtime error occurs when accessing k.
Question 30.
interface One
{
public void someMethod();
}
public class One_impl implements One
{
public native void someMethod();
}
Assuming that the native method is not provided in any local library, an
attempt to compile and run the above lines of code will cause
- Compilation error – implimentations can never be native.
- Compilation error – method not found in local libraries.
- Runtime Exception – method not found in local libraries.
- Compilation successfull but runtime error is thrown if and only if the
method someMethod of class One_impl is called.
Question 31.
Read this piece of code
carefully
if(“String”.replace(‘T’,’t’) == “String”)
System.out.println("Equal");
else
System.out.println("Not Equal");
Answers
- the code will compile an print “Equal”.
- the code will compile an print “Not Equal”.
- the code will cause a compiler error
Question 32.
Read this piece of code
carefully
System.out.println(“String”.substring(0,4));
Answers
- the code will print “Strin” on the screen.
- the code will print “Stri” on the screen.
- the code will cause a compiler error.
Question 33.
Read this piece of code
carefully
if(“String”.replace(‘g’,’G’) == “String”.replace(‘g’,’G’))
System.out.println("Equal");
else
System.out.println("Not Equal");
Answers
- the code will compile an print “Equal”.
- the code will compile an print “Not Equal”.
- the code will cause a compiler error
Question 34.
public class ADirtyOne
{
public static void main(String args[])
{
System.out.println(Math.abs(Integer.MIN_VALUE));
}
}
an attempt to compile and run the above class will
- Cause a compiler error.
- Cause no error and the value printed on the screen is less than zero.
- Cause no error and the value printed on the screen is one more than
Integer.MAX_VALUE - Will throw a runtime exception due to overflow – Integer.MAX_VALUE is less
in magnitue than Integer.MIN_VALUE.
Question 35.
public class ADirtyOne
{
public static void main(String args[])
{
System.out.println(Math.min(0.0,-0.0));
}
}
An attempt to compile and run the above class will
- Cause a compiler Error.
- Cause no error and print the value 0.0 on the screen.
- Cause no error and prints the value -0.0 on the screen.
Question 36.
public class Base
{
public void aMethod() throws ClassNotFoundException
{
}
}
public class Derived extends Base
{
public void aMethod() throws RuntimeException
{
}
}
Assuming that the classes are in two seperate files, compilation of the
Dervied.java causes
- A compiler error because RuntimeException is not a subclass if
ClassNotFoundException. - No compiler error.
Question 37.
Math.round(Float.MAX_VALUE);
- Returns Integer.MAX_VALUE.
- Returns a closest integer to Float.MAX_VALUE;
- Causes a compilation error.
- Causes a runtime Exception
Question 38.
Read the code below carefully
import java.awt.*;
public class TestFrame extends Frame
{
Button bNorth = new Button("North");
Button bSouth = new Button("South");
Button bEast = new Button("East");
Button bWest = new Button("West");
Button bCenter = new Button("Center");
public TestFrame()
{
setLayout(new BorderLayout());
add(bSouth,BorderLayout.SOUTH);
add(bWest,BorderLayout.WEST);
add(bEast,BorderLayout.EAST);
add(bNorth,BorderLayout.NORTH);
add(bCenter);
setLayout(new FlowLayout());
validate();
pack();
setVisible(true);
}
public static void main(String args[])
{
TestFrame tf = new TestFrame();
}
}
What will be the effect trying compile and run the above class?
- Compilation error – a Layout cannot be set twice for a component.
- Compilation error – One button is added without specifing the position in
the borderLayout - No Compilation Error. The Buttons are arranged in a line in the order
(From left to right) “North”,”South”,”West”,”East” and “Center”. - No Compilation Error. The Buttons are arranged in a line in the order
(From left to right) “South”,”West”,”East”,”North” and “Center”. - No Compilation Error. The Buttons are arranged in the north , south, west,
east and center regions, as in a borderlayout. Any further additions will
follow the rules of FlowLayout manager.
Question 39.
import java.awt.*;
public class TestFrame extends Frame
{
Button bNorth = new Button("North");
Button bSouth = new Button("South");
Button bEast = new Button("East");
Button bWest = new Button("West");
Button bCenter = new Button("Center");
public TestFrame()
{
setLayout(new
FlowLayout());add(bNorth);
add(bSouth);
add(bWest);
add(bEast);
add(bCenter);
setLayout(new
BorderLayout());validate();
setSize(300,300);
setVisible(true);
}
public static void main(String args[])
{
TestFrame
tf = new TestFrame();}
}
Attemping to compile and run the above code
- Will cause a compilation error – a Layout cannot be set after a component
has been added with a preset Layout Manager. - Will cause a Runtime Exception – a Layout cannot be set after a
component has been added with a preset Layout Manager. - Will compile cleanly and throw no runtime Exception. Only the button with
label “Center” is visible and occupies the whole screen. - Will compile cleanly an throw no runtime Exception. All the buttons are
arranged in a single line. Any other component added in future will follow
the rules of the BorderLayout Manager. - Will compile and run cleanly, but no component is visible.
- Will compile cleanly and throw no runtime Exception. The buttons are
arranged as listed below
|
|
|
|
|
|
|
|
|
|
|
|
Question 40.
A frame uses BorderLayout Management and has components added to all the
regions. One resizing the Frame Some space becomes available. The space is
alloted to the regions, in which Order of preference?
- North , South, West, East and then Center.
- North , West, South, Center and then Center.
- Center, East, West, South and then North.
- West, Center, South, North and then East.
Question 41.
Read the following piece of code carefully.
import java.awt.*;
public class TestFrame extends Frame
{
Button firstOne = new Button("One");
Button secondOne = new Button("Two");
public TestFrame()
{
add(firstOne,BorderLayout.NORTH);
add(secondOne,BorderLayout.NORTH);
setSize(400,400);
setVisible(true);
}
public static void main(String args[])
{
TestFrame
tf = new TestFrame();}
}
An Attempt to compile and run the above piece of code
- Causes compilation error – a component cannot be added to region which is
already occupied by another component. - Causes Runtime Exception – a component cannot be added to region which is
already occupied by another component. - Neither i or ii. The Frame comes up and only the button with label “Two”
occupies the entire North region of the Frame. - Addition of secondOne causes firstOne to be removed from the container.
- Addition of the secondOne causes the firstOne to be hidden in the container.
Question 42.
import java.awt.*;
public class TestFrame extends Frame
{
public TestFrame()
{
Button
one = new Button("One");Button
two = new Button("Two");Button
three = new Button("Three");setLayout(new
FlowLayout());add(one);
add(two);
add(three);
two.setVisible(false);
setSize(1000,1000);
setVisible(true);
validate();
}
public static void main(String args[])
{
TestFrame
tf = new TestFrame();}
}
- If the above code runs, the buttons – one and three are laid out in a single
row from left to right with a gap in between . - If the above code runs, the buttons – one and three are laid out in a single
row from left to right with no gap in between. - Code does not compile – a component can not be hidden after being added to a
container. - Code gets compiled successfully but throws runtime Exception – a
component can not be hidden after being added to a container.
Question 43.
Read the code below carefully.
import java.awt.*;
public class TestFrame extends Frame
{
public TestFrame()
{
setLayout(new
GridLayout(2,1));for(int
i = 1 ; i <= 4 ;++i){
add(new Button(Integer.toString(i)));}
pack();
setVisible(true);
}
public static void main(String args[])
{
TestFrame
tf = new TestFrame();}
}
- The code above will not compile – The number of components added is
more than the magnitude of row * columns of the Grid Layout Manager. - The code will throw a runtime Exception – The number of components
added is more than the magnitude of row * columns of the Grid Layout
Manager. - The code will compile cleanly and when run Four buttons are visible in 2
rows and 2 columns. - The code will compile and when run, Four buttons are seen in a single
Column.
Question 44.
Read the code below carefully.
import java.awt.*;
public class TestFrame extends Frame
{
public TestFrame()
{
setLayout(new
GridLayout());for(int
i = 1 ; i <= 4 ;++i){
add(new Button(Integer.toString(i)));}
pack();
setVisible(true);
}
public static void main(String args[])
{
TestFrame
tf = new TestFrame();}
}
- The code will not compile – the grid layout does not have a no-argument
constructor.. - The code compiles and when run all the buttons are seen in a single column.
- The code compiles and when run all the buttons are seen in a singe row.
- The code compiles and when run all button are added one on top or another
and only the last one added is visible. - The code compiles , but throws a runtime Exception when components are
added.
Question 45.
Which of the following statements are true about
setLayout() method in java.awt.ScrollPane
- Does nothing.
- Throws UnsupportedMethodException when called.
- It is not overriden in java.awt.ScrollPane.
- Sets the layout to the specified Layout Manager.
Question 46.
A class which has all its constructors declared as private
- Cannot be instantiated by any other class.
- Cannot be extended.
- Both i and ii.
- has to be declared final.
Question 47.
The GridBagConstraints Class
- Is serializable.
- Is cloneable.
- belongs to the java.awt package.
- extends Object.
Question 48.
Read the following code carefully
import java.awt.*;
public class TestFrame extends Frame
{
public TestFrame()
{
CheckboxGroup chg = null;
Checkbox ch = new Checkbox("Test",true,chg);
setLayout(new FlowLayout());
add(ch);
pack();
setVisible(true);}
public static void main(String
args[]){
TestFrame tf = new TestFrame();}
}
An Attempt to compile and run the above code
- will cause a compilation error as the checkbox group is null in the
constructor. - will compile successfully but throws a runtime exception because the
checkbox group is null in the constructor of the check box - will compile and run successfully. The checkbox appears as a single radio
button which is always true. - will compile and run successfully. The checkbox bears its original
appearence and does not appear as a radio button.
Question 49.
Read the following code carefully
import java.awt.*;
public class TestFrame extends Frame
{
public TestFrame()
{
CheckboxGroup chg = new CheckboxGroup();
Checkbox ch = new Checkbox("Test",true,chg);
setLayout(new FlowLayout());
add(ch);
pack();
setVisible(true);}
public static void main(String
args[]){
TestFrame tf = new TestFrame();}
}
An Attempt to compile and run the above code
- will cause a compilation error as the checkbox group contains only one
checkbox. - will compile successfully but throws a runtime exception because the
checkbox group contains only one checkbox. - will compile and run successfully. The checkbox appears as a single radio
button which is always true. - will compile and run successfull. The checkbox bears its original appearence
and does not appear as a radio button.
Question 50.
Which of the following methods of the java.io.File class throws a checked
Exceptions –
- getCanonicalPath()
- getCanonicalFile()
- getAbsolutePath()
- getAbsoluteFile()
- createTempFile()
- createNewFile()
- mkdir()
- mkdirs()
- toURL()
Answers:
- 1
- 2
- 3
- 1
- 4
- FALSE
- 1,3,4
- 1,2,3,4
- 1,3
- 2
- 3
- 3
- 1
- 1,2,4
- 1
- 1
- 1
- 1
- 1,2
- 1,2,3,5
- 1
- 1
- 1
- 1,2,3
- 2
- 3
- 3
- 3
- 3
- 4
- 1
- 2
- 2
- 2
- 3
- 2
- 1
- 4
- 5
- 1
- 3,4
- 2
- 3
- 3
- 1
- 3
- 1,2,3,4
- 4
- 3
- 1,2,5,6,9