Q 1. What is the output of the following StringBuffer sb1 = new StringBuffer("Amit"); StringBuffer sb2= new StringBuffer("Amit"); String ss1 = "Amit"; System.out.println(sb1==sb2); System.out.println(sb1.equals(sb2)); System.out.println(sb1.equals(ss1)); System.out.println("Poddar".substring(3)); Ans: a) false false false dar b) false true false Poddar c) Compiler Error d) true true false dar Correct Answer is a) ***** Look carefully at code and answer the following questions ( Q2 to Q8) 1 import java.applet.Applet; 2 import java.awt.*; 3 import java.awt.event.*; 4 public class hello4 extends Applet { 5 public void init(){ 6 add(new myButton("BBB")); 7 } 8 public void paint(Graphics screen) { 9 } 10 class myButton extends Button{ 11 myButton(String label){ 12 super(label); 13 } 14 public String paramString(){ 15 return super.paramString(); 16 } 17 } 18 public static void main(String[] args){ 19 Frame myFrame = new Frame( 20 "Copyright Amit"); 21 myFrame.setSize(300,100); 22 Applet myApplet = new hello4(); 23 Button b = new Button("My Button"); 24 myApplet.add(b); 25 b.setLabel(b.getLabel()+"New"); 26 // myButton b1 =(new hello4()).new myButton("PARAMBUTTON"); 27 System.out.println(b1.paramString()); 28 myFrame.add(myApplet); 29 myFrame.setVisible(true); 30 myFrame.addWindowListener(new WindowAdapter(){ 31 public void windowClosing(WindowEvent e){ 32 System.exit(0);}}); 33 } 34 } //End hello4 class. Q2. If you run the above program via appletviewer ( defining a HTML file), You see on screen. a) Two buttons b) One button with label as "BBB" c) One button with label as "My ButtonNew" d) One button with label as "My Button" Correct answer is b) Q3. In the above code if line 26 is uncommented and program runs as standalone application a) Compile Error b) Run time error c) It will print the the label as PARAMBUTTON for button b1 Correct answer is c) Q4 In the code if you compile as "javac hello4.java" following files will be generated. a) hello4.class, myButton.class,hello41.class b)hello4.class, hello4$myButton.class,hello4$1.class c)hello4.clas,hello4$myButton.class Correct answer is b) Q5. If above program is run as a standalone application. How many buttons will be displayed a) Two buttons b) One button with label as "BBB" c) One button with label as "My ButtonNew" d) One button with label as "My Button" correct answer is C) Q6. If from line no 14 keyword "public" is removed, what will happen.( Hint :paramString() method in java.awt.Button is a protected method. (Assume line 26 is uncommented) a) Code will not compile. b) Code will compile but will give a run time error. c) Code will compile and no run time error. Correct answer is a). As you can not override a method with weaker access privileges Q7. If from line no 14 keyword "public" is replaced with "protected", what will happen.(Hint :paramString() method in java.awt.Button is a protected method.(Assume line 26 is uncommented) a) Code will not compile. b) Code will compile but will give a run time error. c) Code will compile and no run time error. Correct answer is c) . As you can access a protected variable in the same package. Q8.If line no 26 is replaced with Button b1 = new Button("PARAMBUTTON").(Hint :paramString() method in java.awt.Button is a protected method.(Assume line 26 is uncommented) a) Code will not compile. b) Code will compile but will give a run time error. c) Code will compile and no run time error. Correct answer is a) Because protected variables and methods can not be accssed in another package directly. They can only be accessed if the class is subclassed and instance of subclass is used. Q9. What is the output of following if the return value is "the value 0 if the argument string is equal to this string; a value less than 0 if this string is lexicographically less than the string argument; and a value greater than 0 if this string is lexicographically greater than the string argument" (Assuming written inside main) String s5 = "AMIT"; String s6 = "amit"; System.out.println(s5.compareTo(s6)); System.out.println(s6.compareTo(s5)); System.out.println(s6.compareTo(s6)); Ans a> -32 32 0 b> 32 32 0 c> 32 -32 0 d> 0 0 0 Correct Answer is a) Q 10) What is the output (Assuming written inside main) String s1 = new String("amit"); String s2 = s1.replace('m','i'); s1.concat("Poddar"); System.out.println(s1); System.out.println((s1+s2).charAt(5)); a) Compile error b) amitPoddar o c) amitPoddar i d) amit i Correct answer is d)As String is imutable.so s1 is always "amit". and s2 is "aiit". Q 11) What is the output (Assuming written inside main) String s1 = new String("amit"); System.out.println(s1.replace('m','r')); System.out.println(s1); String s3="arit"; String s4="arit"; String s2 = s1.replace('m','r'); System.out.println(s2==s3); System.out.println(s3==s4); a) arit amit false true b) arit arit false true c) amit amit false true d) arit amit true true Correct answer is a) s3==s4 is true because java points both s3 and s4 to same memory location in string pool Q12) Which one does not extend java.lang.Number 1)Integer 2)Boolean 3)Character 4)Long 5)Short Correct answer is 2) and 3) Q13) Which one does not have a valueOf(String) method 1)Integer 2)Boolean 3)Character 4)Long 5)Short Correct answer is 3) Q.14) What is the output of following (Assuming written inside main) String s1 = "Amit"; String s2 = "Amit"; String s3 = new String("abcd"); String s4 = new String("abcd"); System.out.println(s1.equals(s2)); System.out.println((s1==s2)); System.out.println(s3.equals(s4)); System.out.println((s3==s4)); a) true true true false b) true true true true c) true false true false Correct answer is a) Q15. Which checkbox will be selected in the following code ( Assume with main and added to a Frame) Frame myFrame = new Frame("Test"); CheckboxGroup cbg = new CheckboxGroup(); Checkbox cb1 = new Checkbox("First",true,cbg); Checkbox cb2 = new Checkbox("Scond",true,cbg); Checkbox cb3 = new Checkbox("THird",false,cbg); cbg.setSelectedCheckbox(cb3); myFrame.add(cb1); myFrame.add(cb2); myFrame.add(cb3); a) cb1 b) cb2,cb1 c) cb1,cb2,cb3 d) cb3 Correct Answer is d) As in a CheckboxGroup only one can be selected Q16) Which checkbox will be selected in the following code ( Assume with main and added to a Frame) Frame myFrame = new Frame("Test"); CheckboxGroup cbg = new CheckboxGroup(); Checkbox cb1 = new Checkbox("First",true,cbg); Checkbox cb2 = new Checkbox("Scond",true,cbg); Checkbox cb3 = new Checkbox("THird",true,cbg); myFrame.add(cb1); myFrame.add(cb2); myFrame.add(cb3); a) cb1 b) cb2,cb1 c) cb1,cb2,cb3 d) cb3 Correct Answer is d) As in a CheckboxGroup only one can be selected Q17) What will be the output of line 5 1 Choice c1 = new Choice(); 2 c1.add("First"); 3 c1.addItem("Second"); 4 c1.add("Third"); 5 System.out.println(c1.getItemCount()); a) 1 b) 2 c) 3 d) None of the above Correct Answer is c) Q18) What will be the order of four items added Choice c1 = new Choice(); c1.add("First"); c1.addItem("Second"); c1.add("Third"); c1.insert("Lastadded",2); System.out.println(c1.getItemCount()); a) First,Second,Third,Fourth b) First,Second,Lastadded,Third c) Lastadded,First,Second,Third Correct ANswer is b) Q19) Answer based on following code 1 Choice c1 = new Choice(); 2 c1.add("First"); 3 c1.addItem("Second"); 4 c1.add("Third"); 5 c1.insert("Lastadded",1000); 6 System.out.println(c1.getItemCount()); a) Compile time error b) Run time error at line 5 c) No error and line 6 will print 1000 d) No error and line 6 will print 4 Correct ANswer is d) Q20) Which one of the following does not extends java.awt.Component a) CheckBox b) Canvas c) CheckbocGroup d) Label Correct answer is c) Q21) What is default layout manager for panels and applets? a) Flowlayout b) Gridlayout c) BorderLayout Correct answer is a) Q22) For awt components which of the following statements are true? a) If a component is not explicitly assigned a font, it usese the same font that it container uses. b) If a component is not explicitly assigned a foreground color , it usese the same foreground color that it container uses. c) If a component is not explicitly assigned a backround color , it usese the same background color that it container uses. d) If a component is not explicitly assigned a layout manager , it usese the same layout manager that it container uses. correct answer is a),b),c) Q23)java.awt.Component class method getLocation() returns Point (containg x and y cordinate).What does this x and y specify a) Specify the postion of components lower-left component in the coordinate space of the component's parent. b) Specify the postion of components upper-left component in the coordinate space of the component's parent. c) Specify the postion of components upper-left component in the coordinate space of the screen. correct answer is b) Q24. Q. What will be the output of follwing { double d1 = -0.5d; System.out.println("Ceil for d1 " + Math.ceil(d1)); System.out.println("Floor for d1 " +Math.floor(d1)); } Answers: a) Ceil for d1 0 Floor for d1 -1; b) Ceil for d1 0 Floor for d1 -1.0; c) Ceil for d1 0.0 Floor for d1 -1.0; d) Ceil for d1 -0.0 Floor for d1 -1.0; correct answer is d) as 0.0 is treated differently from -0.0 Q25. What is the output of following { float f4 = -5.5f; float f5 = 5.5f; float f6 = -5.49f; float f7 = 5.49f; System.out.println("Round f4 is " + Math.round(f4)); System.out.println("Round f5 is " + Math.round(f5)); System.out.println("Round f6 is " + Math.round(f6)); System.out.println("Round f7 is " + Math.round(f7)); } a)Round f4 is -6 Round f5 is 6 Round f6 is -5 Round f7 is 5 b)Round f4 is -5 Round f5 is 6 Round f6 is -5 Round f7 is 5 Correct answer is b) Q26. Given Integer.MIN_VALUE = -2147483648 Integer.MAX_VALUE = 2147483647 What is the output of following { float f4 = Integer.MIN_VALUE; float f5 = Integer.MAX_VALUE; float f7 = -2147483655f; System.out.println("Round f4 is " + Math.round(f4)); System.out.println("Round f5 is " + Math.round(f5)); System.out.println("Round f7 is " + Math.round(f7)); } a)Round f4 is -2147483648 Round f5 is 2147483647 Round f7 is -2147483648 b)Round f4 is -2147483648 Round f5 is 2147483647 Round f7 is -2147483655 correct answer is a) //Reason If the argument is negative infinity or any value less than or equal to the value of Integer.MIN_VALUE, the result is equal to the value of Integer.MIN_VALUE. If the argument is positive infinity or any value greater than or equal to the value of Integer.MAX_VALUE, the result is equal to the value of Integer.MAX_VALUE. // From JDK api documentation Q27) 1 Boolean b1 = new Boolean("TRUE"); 2 Boolean b2 = new Boolean("true"); 3 Boolean b3 = new Boolean("JUNK"); 4 System.out.println("" + b1 + b2 + b3); a) Comiler error b) RunTime error c)truetruefalse d)truetruetrue Correct answer is c) Q 28) In the above question if line 4 is changed to System.out.println(b1+b2+b3); The output is a) Compile time error b) Run time error c) truetruefalse d) truetruetrue Correct answer is a) As there is no method to support Boolean + Boolean Boolean b1 = new Boolean("TRUE"); Think ----->System.out.println(b1); // Is this valid or not? Q 29. What is the output { Float f1 = new Float("4.4e99f"); Float f2 = new Float("-4.4e99f"); Double d1 = new Double("4.4e99"); System.out.println(f1); System.out.println(f2); System.out.println(d1); } a) Runtime error b) Infinity -Infinity 4.4E99 c) Infinity -Infinity Infinity d) 4.4E99 -4.4E99 4.4E99 Correct answer is b) Q30 Q. Which of the following wrapper classes can not take a "String" in constructor 1) Boolean 2) Integer 3) Long 4) Character 5) Byte 6) Short correct answer is 4) Q31. What is the output of following Double d2 = new Double("-5.5"); Double d3 = new Double("-5.5"); System.out.println(d2==d3); System.out.println(d2.equals(d3)); a) true true b) false false c) true false d) false true Correct answer is d) Q32) Which one of the following always honors the components's preferred size. a) FlowLayout b) GridLayout c) BorderLayout Correct answer is a) Q33) Look at the following code import java.awt.*; public class visual extends java.applet.Applet{ static Button b = new Button("TEST"); public void init(){ add(b); } public static void main(String args[]){ Frame f = new Frame("Visual"); f.setSize(300,300); f.add(b); f.setVisible(true); } } What will happen if above code is run as a standalone application a) Displays an empty frame b) Displays a frame with a button covering the entire frame c) Displays a frame with a button large enough to accomodate its label. Correct answer is b) Reason- Frame uses Border Layout which places the button to CENTRE (By default) and ignores Button's preferred size. Q34 If the code in Q33 is compiled and run via appletviewer what will happen a) Displays an empty applet b) Displays a applet with a button covering the entire frame c) Displays a applet with a button large enough to accomodate its label. Correct answer is c) Reason- Applet uses FlowLayout which honors Button's preferred size. Q35. What is the output public static void main(String args[]){ Frame f = new Frame("Visual"); f.setSize(300,300); f.setVisible(true); Point p = f.getLocation(); System.out.println("x is " + p.x); System.out.println("y is " + p.y); } a) x is 300 y is 300 b) x is 0 y is 0 c) x is 0 y is 300 correct answer is b) Because postion is always relative to parent container and in this case Frame f is the topemost container Q36) Which one of the following always ignores the components's preferred size. a) FlowLayout b) GridLayout c) BorderLayout Correct answer is b) Q37) Consider a directory structure like this (NT or 95) C:\JAVA\12345.msg --FILE \dir1\IO.class -- IO.class is under dir1 Consider the following code import java.io.*; public class IO { public static void main(String args[]) { File f = new File("..\\12345.msg"); try{ System.out.println(f.getCanonicalPath()); System.out.println(f.getAbsolutePath()); }catch(IOException e){ System.out.println(e); } } } What will be the output of running "java IO" from C:\java\dir1 a) C:\java\12345.msg C:\java\dir1\..\12345.msg b) C:\java\dir1\12345.msg C:\java\dir1\..\12345.msg c) C:\java\dir1\..\12345.msg C:\java\dir1\..\12345.msg correct answer is a) as getCanonicalPath Returns the canonical form of this File object's pathname. The precise definition of canonical form is system-dependent, but it usually specifies an absolute pathname in which all relative references and references to the current user directory have been completely resolved. WHERE AS getAbsolutePath Returns the absolute pathname of the file represented by this object. If this object represents an absolute pathname, then return the pathname. Otherwise, return a pathname that is a concatenation of the current user directory, the separator character, and the pathname of this file object. Q 38) Suppose we copy IO.class from C:\java\dir1 to c:\java What will be the output of running "java IO" from C:\java. a) C:\java\12345.msg C:\java\..\12345.msg b) C:\12345.msg C:\java\..\12345.msg c) C:\java\..\12345.msg C:\java\\..\12345.msg correct answer is b) Q39) Which one of the following methods of java.io.File throws IOException and why a) getCanonicalPath and getAbsolutePath both require filesystem queries. b) Only getCannonicalPath as it require filesystem queries. c) Only getAbsolutePath as it require filesystem queries. Correct answer is b) Q40) What will be the output if Consider a directory structure like this (NT or 95) C:\JAVA\12345.msg --FILE \dir1\IO.class -- IO.class is under dir1 import java.io.*; public class IO { public static void main(String args[]) { File f = new File("12345.msg"); String arr[] = f.list(); System.out.println(arr.length); } } a) Compiler error as 12345.msg is a file not a directory b) java.lang.NullPointerException at run time c) No error , but nothing will be printed on screen Correct ansewer is b) Q41) What will be the output Consider a directory structure like this (NT or 95) C:\JAVA\12345.msg --FILE import java.io.*; public class IO { public static void main(String args[]) { File f1 = new File("\\12345.msg"); System.out.println(f1.getPath()); System.out.println(f1.getParent()); System.out.println(f1.isAbsolute()); System.out.println(f1.getName()); System.out.println(f1.exists()); System.out.println(f1.isFile()); } } a) \12345.msg \ true 12345.msg true true b) \12345.msg \ true \12345.msg false false c) 12345.msg \ true 12345.msg false false d) \12345.msg \ true 12345.msg false false correct answer is d) Q42) If in question no 41 the line File f1 = new File("\\12345.msg"); is replaced with File f1 = new File("12345.msg"); What will be the output a) 12345.msg \ true 12345.msg true true b) 12345.msg null true 12345.msg true true c) 12345.msg null false 12345.msg true true d) \12345.msg \ true 12345.msg false false Correct answer is c)