Java Programming Questions and Answers
The width in bits of double primitive type in Java is --.
public void test(int x)
{
int odd = 1;
if(odd) /* Line 4 */
{
System.out.println("odd");
}
else
{
System.out.println("even");
}
}
The compiler will complain because of incompatible types (line 4), the if expects a boolean but it gets an integer
public class While
{
public void loop()
{
int x= 0;
while ( 1 ) /* Line 6 */
{
System.out.print("x plus one is " + (x + 1)); /* Line 8 */
}
}
}
Using the integer 1 in the while statement, or any other looping or conditional construct for that matter, will result in a compiler error. This is old C Program syntax, not valid Java.
A, B and C are incorrect because line 1 is valid (Java is case sensitive so While is a valid class name). Line 8 is also valid because an equation may be placed in a String operation as shown.
switch(x)
{
default:
System.out.println("Hello");
}
Which two are acceptable types for x?
1.byte
2.long
3.char
4.float
5.short
6.long
Switch statements are based on integer expressions and since both bytes and chars can implicitly be widened to an integer, these can also be used. Also shorts can be used.Short and Long are wrapper classes and reference types can not be used as variables.
public void foo( boolean a, boolean b)
{
if( a )
{
System.out.println("A"); /* Line 5 */
}
else if(a && b) /* Line 7 */
{
System.out.println( "A && B");
}
else /* Line 11 */
{
if ( !b )
{
System.out.println( "notB") ;
}
else
{
System.out.println( "ELSE" ) ;
}
}
}
public void foo( boolean a, boolean b)
{
if( a )
{
System.out.println("A"); /* Line 5 */
}
else if(a && b) /* Line 7 */
{
System.out.println( "A && B");
}
else /* Line 11 */
{
if ( !b )
{
System.out.println( "notB") ;
}
else
{
System.out.println( "ELSE" ) ;
}
}
}
Option C is correct. The output is "ELSE". Only when a is false do the output lines after 11 get some chance of executing.
Option A is wrong. The output is "A". When a is true, irrespective of the value of b, only the line 5 output will be executed. The condition at line 7 will never be evaluated (when a is true it will always be trapped by the line 12 condition) therefore the output will never be "A && B".
Option B is wrong. The output is "A". When a is true, irrespective of the value of b, only the line 5 output will be executed.
Option D is wrong. The output is "notB".
publicabstractclassAbstractTest
{publicint getNum()
{
return45;
}
publicabstractclassBar
{publicint getNum()
{
return38;
}
}
publicstaticvoid main (String [] args)
{
AbstractTest t = new AbstractTest()
{
publicint getNum()
{
return22;
}
};
AbstractTest.Bar f = t.new Bar()
{
publicint getNum()
{
return57;
}
};
System.out.println(f.getNum() + " " + t.getNum());
}
}
what wll be the output?
publicclassHorseTest
{publicstaticvoid main (String [] args)
{
classHorse
{public String name; /* Line 7 */public Horse(String s)
{
name = s;
}
} /* class Horse ends */
Object obj = new Horse("Zippo"); /* Line 13 */
Horse h = (Horse) obj; /* Line 14 */
System.out.println(h.name);
}
} /* class HorseTest ends */
what will be the output?
Which constructs an anonymous inner class instance?
Which is true about a method-local inner class? |