Java Mulchoice
Java Mulchoice
Java Basics
1.The Java interpreter is used for the execution of the source code.
True
False
Ans: a.
2) On successful compilation a file with the class extension is created.
a) True
b) False
Ans: a.
3) The Java source code can be created in a Notepad editor.
a) True
b) False
Ans: a.
4) The Java Program is enclosed in a class definition.
a) True
b) False
Ans: a.
5) What declarations are required for every Java application?
Ans: A class and the main( ) method declarations.
6) What are the two parts in executing a Java program and their purposes?
Ans: Two parts in executing a Java program are:
Java Compiler and Java Interpreter.
The Java Compiler is used for compilation and the Java Interpreter is used for execution
of the application.
7) What are the three OOPs principles and define them?
Ans : Encapsulation, Inheritance and Polymorphism are the three OOPs
Principles.
Encapsulation:
Is the Mechanism that binds together code and the data it manipulates, and keeps both
safe from outside interference and misuse.
Inheritance:
Is the process by which one object acquires the properties of another object.
Polymorphism:
Is a feature that allows one interface to be used for a general class of actions.
1
calypso
10) In order for a source code file, containing the public class Test, to successfully
compile, which of the following must be true?
It must have a package statement
It must be named Test.java
It must import java.lang
It must declare a public class named Test
Ans : b
11) What are identifiers and what is naming convention?
Ans : Identifiers are used for class names, method names and variable names. An
identifier may be any descriptive sequence of upper case & lower case letters,numbers or
underscore or dollar sign and must not begin with numbers.
12) What is the return type of program’s main( ) method?
Ans : void
13) What is the argument type of program’s main( ) method?
Ans : string array.
14) Which characters are as first characters of an identifier?
Ans : A – Z, a – z, _ ,$
15) What are different comments?
Ans : 1) // -- single line comment
2) /* --
*/ multiple line comment
3) /** --
*/ documentation
16) What is the difference between constructor method and method?
Ans : Constructor will be automatically invoked when an object is created. Whereas
method has to be call explicitly.
17) What is the use of bin and lib in JDK?
Ans : Bin contains all tools such as javac, applet viewer, awt tool etc., whereas Lib
contains all packages and variables.
2
calypso
Ans: Variables can be declared anywhere in the method definition and can be initialized
during their declaration.They are commonly declared before usage at the beginning of the
definition.
Variables with the same data type can be declared together. Local variables must be
given a value before usage.
4) What are variable types?
Ans: Variable types can be any data type that java supports, which includes the eight
primitive data types, the name of a class or interface and an array.
5) How do you assign values to variables?
Ans: Values are assigned to variables using the assignment operator =.
6) What is a literal? How many types of literals are there?
Ans: A literal represents a value of a certain type where the type describes how that value
behaves.
There are different types of literals namely number literals, character literals,
boolean literals, string literals,etc.
7) What is an array?
Ans: An array is an object that stores a list of items.
8) How do you declare an array?
Ans: Array variable indicates the type of object that the array holds.
Ex: int arr[];
9) Java supports multidimensional arrays.
a)True
b)False
Ans: a.
10) An array of arrays can be created.
a)True
b)False
Ans: a.
11) What is a string?
Ans: A combination of characters is called as string.
12) Strings are instances of the class String.
a)True
b)False
Ans: a.
13) When a string literal is used in the program, Java automatically creates instances of
the string class.
a)True
b)False
Ans: a.
14) Which operator is to create and concatenate string?
Ans: Addition operator(+).
15) Which of the following declare an array of string objects?
String[ ] s;
String [ ]s:
String[ s]:
String s[ ]:
3
calypso
Ans : a, b and d
16) What is the value of a[3] as the result of the following array declaration?
1
2
3
4
Ans : d
17) Which of the following are primitive types?
byte
String
integer
Float
Ans : a.
18) What is the range of the char type?
0 to 216
0 to 215
0 to 216-1
0 to 215-1
Ans. d
19) What are primitive data types?
Ans : byte, short, int, long
float, double
boolean
char
20) What are default values of different primitive types?
Ans : int - 0
short - 0
byte - 0
long - 0 l
float - 0.0 f
double - 0.0 d
boolean - false
char - null
21) Converting of primitive types to objects can be explicitly.
a)True
b)False
Ans: b.
22) How do we change the values of the elements of the array?
Ans : The array subscript expression can be used to change the values of the elements of
the array.
23) What is final varaible?
Ans : If a variable is declared as final variable, then you can not change its value. It
becomes constant.
24) What is static variable?
Ans : Static variables are shared by all instances of a class.
4
calypso
Operators
1) What are operators and what are the various types of operators available in Java?
Ans: Operators are special symbols used in expressions.
The following are the types of operators:
Arithmetic operators,
Assignment operators,
Increment & Decrement operators,
Logical operators,
Biwise operators,
Comparison/Relational operators and
Conditional operators
2) The ++ operator is used for incrementing and the -- operator is used for
decrementing.
a)True
b)False
Ans: a.
3) Comparison/Logical operators are used for testing and magnitude.
a)True
b)False
Ans: a.
4) Character literals are stored as unicode characters.
a)True
b)False
Ans: a.
5) What are the Logical operators?
Ans: OR(|), AND(&), XOR(^) AND NOT(~).
6) What is the % operator?
Ans : % operator is the modulo operator or reminder operator. It returns the reminder of
dividing the first operand by second operand.
7) What is the value of 111 % 13?
3
5
7
9
Ans : c.
8) Is &&= a valid operator?
Ans : No.
9) Can a double value be cast to a byte?
Ans : Yes
10) Can a byte object be cast to a double value ?
Ans : No. An object cannot be cast to a primitive value.
11) What are order of precedence and associativity?
Ans : Order of precedence the order in which operators are evaluated in expressions.
Associativity determines whether an expression is evaluated left-right or right-left.
5
calypso
Control Statements
1) What are the programming constructs?
Ans: a) Sequential
b) Selection -- if and switch statements
c) Iteration -- for loop, while loop and do-while loop
2) class conditional {
public static void main(String args[]) {
int i = 20;
int j = 55;
int z = 0;
z = i < j ? i : j; // ternary operator
System.out.println("The value assigned is " + z);
}
}
What is output of the above program?
Ans: The value assigned is 20
3) The switch statement does not require a break.
a)True
b)False
Ans: b.
4) The conditional operator is otherwise known as the ternary operator.
6
calypso
a)True
b)False
Ans: a.
5) The while loop repeats a set of code while the condition is false.
a)True
b)False
Ans: b.
6) The do-while loop repeats a set of code atleast once before the condition is tested.
a)True
b)False
Ans: a.
7) What are difference between break and continue?
Ans: The break keyword halts the execution of the current loop and forces control out of
the loop.
The continue is similar to break, except that instead of halting the execution of the loop, it
starts the next iteration.
8) The for loop repeats a set of statements a certain number of times until a condition is
matched.
a)True
b)False
Ans: a.
9) Can a for statement loop indefintely?
Ans : Yes.
10) What is the difference between while statement and a do statement/
Ans : A while statement checks at the beginning of a loop to see whether the next loop
iteration should occur.
A do statement checks at the end of a loop to see whether the next iteration of a loop
should occur. The do statement will always execute the body of a loop at least once.
7
calypso
16) Casting between primitive types allows conversion of one primitive type to another.
a)True
b)False
Ans: a.
17) Casting occurs commonly between numeric types.
a)True
8
calypso
b)False
Ans: a.
18) Boolean values can be cast into any other primitive type.
a)True
b)False
Ans: b.
19) Casting does not affect the original object or value.
a)True
b)False
Ans: a.
20) Which cast must be used to convert a larger value into a smaller one?
Ans: Explicit cast.
21) Which cast must be used to cast an object to another class?
Ans: Specific cast.
22) Which of the following features are common to both Java & C++?
A.The class declaration
b.The access modifiers
c.The encapsulation of data & methods with in objects
d.The use of pointers
Ans: a,b,c.
23) Which of the following statements accurately describe the use of access modifiers
within a class definition?
a.They can be applied to both data & methods
b.They must precede a class's data variables or methods
c.They can follow a class's data variables or methods
d.They can appear in any order
e.They must be applied to data variables first and then to methods
Ans: a,b,d.
24) Suppose a given instance variable has been declared private.
Can this instance variable be manipulated by methods out side its class?
a.yes
b.no
Ans: b.
25) Which of the following statements can be used to describe a public method?
a.It is accessible to all other classes in the hierarchy
b.It is accessablde only to subclasses of its parent class
c.It represents the public interface of its class
d.The only way to gain access to this method is by calling one of the public class
methods
Ans: a,c.
26) Which of the following types of class members can be part of the internal part of a
class?
a.Public instance variables
b.Private instance variables
c.Public methods
d.Private methods
9
calypso
Ans: b,d.
27) You would use the ____ operator to create a single instance of a named class.
a.new
b.dot
Ans: a.
28) Which of the following statements correctly describes the relation between an object
and the instance variable it stores?
a.Each new object has its own distinctive set of instance variables
b.Each object has a copy of the instance variables of its class
c.the instance variable of each object are seperate from the variables of other objects
d.The instance variables of each object are stored together with the variables of other
objects
Ans: a,b,c.
29) If no input parameters are specified in a method declaration then the declaration will
include __.
a.an empty set of parantheses
b.the term void
Ans: a.
30) What are the functions of the dot(.) operator?
a.It enables you to access instance variables of any objects within a class
b.It enables you to store values in instance variables of an object
c.It is used to call object methods
d.It is to create a new object
Ans: a,b,c.
31) Which of the following can be referenced by this variable?
a.The instance variables of a class only
b.The methods of a class only
c.The instance variables and methods of a class
Ans: c.
32) The this reference is used in conjunction with ___methods.
a.static
b.non-static
Ans: b.
33) Which of the following operators are used in conjunction with the this and super
references?
a.The new operator
b.The instanceof operator
c.The dot operator
Ans: c.
34) A constructor is automatically called when an object is instantiated
a. true
b. false
Ans: a.
35) When may a constructor be called without specifying arguments?
a. When the default constructor is not called
b. When the name of the constructor differs from that of the class
10
calypso
11
calypso
45) You can explicitly drop a object reference by setting the value of a variable whose
data type is a reference type to ___
Ans: null
46) When might your program wish to run the garbage collecter?
a. before it enters a compute-intense section of code
b. before it enters a memory-intense section of code
c. before objects are finalized
d. when it knows there will be some idle time
Ans: a,b,d
47) For externalizable objects the class is solely responsible for the external format of its
contents
a.true
b.false
Ans: a
48) When an object is stored, are all of the objects that are reachable from that object
stored as well?
a.true
b.false
Ans: a
49) The default__ of objects protects private and trancient data, and supports the __ of the
classes
a.evolution
b.encoding
Ans: b,a.
50) Which are keywords in Java?
a) NULL
b) sizeof
c) friend
d) extends
e) synchronized
Ans : d and e
51) When must the main class and the file name coincide?
Ans :When class is declared public.
52) What are different modifiers?
Ans : public, private, protected, default, static, trancient, volatile, final, abstract.
53) What are access modifiers?
Ans : public, private, protected, default.
54) What is meant by "Passing by value" and " Passing by reference"?
Ans : objects – pass by referrence
Methods - pass by value
55) Is a class a subclass of itself?
Ans : A class is a subclass itself.
12
calypso
Inner class
Anonymous classes
Method overloading
Method overriding
Ans : c
11) User-defined package can also be imported just like the standard packages.
True/False
Ans : True
13
calypso
12) When a program does not want to handle exception, the ______class is used.
Ans : Throws
13) The main subclass of the Exception class is _______ class.
Ans : RuntimeException
14) Only subclasses of ______class may be caught or thrown.
Ans : Throwable
15) Any user-defined exception class is a subclass of the _____ class.
Ans : Exception
16) The catch clause of the user-defined exception class should ______ its
Base class catch clause.
Ans : Exception
17) A _______ is used to separate the hierarchy of the class while declaring an
Import statement.
Ans : Package
18) All standard classes of Java are included within a package called _____.
Ans : java.lang
19) All the classes in a package can be simultaneously imported using ____.
Ans : *
20) Can you define a variable inside an Interface. If no, why? If yes, how?
Ans.: YES. final and static
21) How many concrete classes can you have inside an interface?
Ans.: None
22) Can you extend an interface?
Ans.: Yes
23) Is it necessary to implement all the methods of an interface while implementing the
interface?
Ans.: No
24) If you do not implement all the methods of an interface while implementing , what
specifier should you use for the class ?
Ans.: abstract
25) How do you achieve multiple inheritance in Java?
Ans: Using interfaces.
26) How to declare an interface example?
Ans : access class classname implements interface.
27) Can you achieve multiple interface through interface?
a)True
b) false
Ans : a.
28) Can variables be declared in an interface ? If so, what are the modifiers?
Ans : Yes. final and static are the modifiers can be declared in an interface.
29) What are the possible access modifiers when implementing interface methods?
Ans : public.
30) Can anonymous classes be implemented an interface?
Ans : Yes.
31) Interfaces can’t be extended.
14
calypso
a)True
b)False
Ans : b.
32) Name interfaces without a method?
Ans : Serializable, Cloneble & Remote.
33) Is it possible to use few methods of an interface in a class ? If so, how?
Ans : Yes. Declare the class as abstract.
Exception Handling
1) What is the difference between ‘throw’ and ‘throws’ ?And it’s application?
Ans : Exceptions that are thrown by java runtime systems can be handled by Try and
catch blocks. With throw exception we can handle the exceptions thrown by the program
itself. If a method is capable of causing an exception that it does not
handle, it must specify this behavior so the callers of the method can guard
against that exception.
2) What is the difference between ‘Exception’ and ‘error’ in java?
Ans : Exception and Error are the subclasses of the Throwable class. Exception class is
used for exceptional conditions that user program should catch. With exception class we
can subclass to create our own custom exception.
Error defines exceptions that are not excepted to be caught by you program. Example is
Stack Overflow.
3) What is ‘Resource leak’?
Ans : Freeing up other resources that might have been allocated at the beginning of a
method.
4)What is the ‘finally’ block?
Ans : Finally block will execute whether or not an exception is thrown. If an exception is
thrown, the finally block will execute even if no catch statement match the exception.
Any time a method is about to return to the caller from inside try/catch block, via an
uncaught exception or an explicit return statement, the finally clause is also execute.
5) Can we have catch block with out try block? If so when?
Ans : No. Try/Catch or Try/finally form a unit.
6) What is the difference between the following statements?
Catch (Exception e),
Catch (Error err),
Catch (Throwable t)
Ans :
15
calypso
9) The finally block is executed when an exception is thrown, even if no catch matches it.
True/False
Ans : True
10) The subclass exception should precede the base class exception when used within the
catch clause.
True/False
Ans : True
11) Exceptions can be caught or rethrown to a calling method.
True/False
Ans : True
12) The statements following the throw keyword in a program are not executed.
True/False
Ans : True
13) The toString ( ) method in the user-defined exception class is overridden.
True/False
Ans : True
MULTI THREADING
1) What are the two types of multitasking?
Ans : 1.process-based
2.Thread-based
2) What are the two ways to create the thread?
Ans : 1.by implementing Runnable
2.by extending Thread
3) What is the signature of the constructor of a thread class?
Ans : Thread(Runnable threadob,String threadName)
4) What are all the methods available in the Runnable Interface?
Ans : run()
5) What is the data type for the method isAlive() and this method is
available in which class?
Ans : boolean, Thread
6) What are all the methods available in the Thread class?
Ans : 1.isAlive()
16
calypso
2.join()
3.resume()
4.suspend()
5.stop()
6.start()
7.sleep()
8.destroy()
7) What are all the methods used for Inter Thread communication and what is the class in
which these methods are defined?
Ans :1. wait(),notify() & notifyall()
2. Object class
8) What is the mechanisam defind by java for the Resources to be used by only one
Thread at a time?
Ans : Synchronisation
9) What is the procedure to own the moniter by many threads?
Ans : not possible
10) What is the unit for 1000 in the below statement?
ob.sleep(1000)
Ans : long milliseconds
11) What is the data type for the parameter of the sleep() method?
Ans : long
12) What are all the values for the following level?
max-priority
min-priority
normal-priority
Ans : 10,1,5
13) What is the method available for setting the priority?
Ans : setPriority()
14) What is the default thread at the time of starting the program?
Ans : main thread
15) The word synchronized can be used with only a method.
True/ False
Ans : False
16) Which priority Thread can prompt the lower primary Thread?
Ans : Higher Priority
17) How many threads at a time can access a monitor?
Ans : one
18) What are all the four states associated in the thread?
Ans : 1. new 2. runnable 3. blocked 4. dead
19) The suspend()method is used to teriminate a thread?
True /False
Ans : False
20) The run() method should necessary exists in clases created as subclass of thread?
True /False
Ans : True
17
calypso
21) When two threads are waiting on each other and can't proceed the programe is said to
be in a deadlock?
True/False
Ans : True
22) Which method waits for the thread to die ?
Ans : join() method
Inheritance
1) What is the difference between superclass & subclass?
Ans : A super class is a class that is inherited whereas subclass is a class that does the
inheriting.
2) Which keyword is used to inherit a class?
Ans : extends
3) Subclasses methods can access superclass members/ attributes at all times?
True/False
Ans : False
18
calypso
Ans : True
7) Java supports multiple inheritance?
True/False
Ans : False
8) What is inheritance?
Ans : Deriving an object from an existing class. In the other words, Inheritance is the
process of inheriting all the features from a class
9) What are the advantages of inheritance?
Ans : Reusability of code and accessibility of variables and methods of the superclass by
subclasses.
10) Which method is used to call the constructors of the superclass from the subclass?
Ans : super(argument)
11) Which is used to execute any method of the superclass from the subclass?
Ans : super.method-name(arguments)
12) Which methods are used to destroy the objects created by the constructor methods?
Ans : finalize()
13) What are abstract classes?
Ans : Abstract classes are those for which instances can’t be created.
14) What must a class do to implement an interface?
Ans: It must provide all of the methods in the interface and identify the interface in its
implements clause.
15) Which methods in the Object class are declared as final?
Ans : getClass(), notify(), notifyAll(), and wait()
16) Final methods can be overridden.
True/False
Ans : False
17) Declaration of methods as final results in faster execution of the program?
True/False
Ans: True
18) Final variables should be declared in the beginning?
True/False
Ans : True
19) Can we declare variable inside a method as final variables? Why?
Ans : Cannot because, local variable cannot be declared as final variables.
20) Can an abstract class may be final?
Ans : An abstract class may not be declared as final.
21) Does a class inherit the constructors of it's super class?
Ans: A class does not inherit constructors from any of it's super classes.
22) What restrictions are placed on method overloading?
Ans: Two methods may not have the same name and argument list but different return
types.
23) What restrictions are placed on method overriding?
Ans : Overridden methods must have the same name , argument list , and return type. The
overriding method may not limit the access of the method it overridees.The overriding
method may not throw any exceptions that may not be thrown by the overridden method.
24) What modifiers may be used with an inner class that is a member of an outer class?
19
calypso
Ans : a (non-local) inner class may be declared as public, protected, private, static, final
or abstract.
25) How this() is used with constructors?
Ans: this() is used to invoke a constructor of the same class
26) How super() used with constructors?
Ans : super() is used to invoke a super class constructor
27) Which of the following statements correctly describes an interface?
a)It's a concrete class
b)It's a superclass
c)It's a type of abstract class
Ans: c
28) An interface contains __ methods
a)Non-abstract
b)Implemented
c)unimplemented
Ans:c
STRING HANDLING
Which package does define String and StringBuffer classes?
Ans : java.lang package.
Which method can be used to obtain the length of the String?
Ans : length( ) method.
How do you concatenate Strings?
Ans : By using " + " operator.
Which method can be used to compare two strings for equality?
Ans : equals( ) method.
Which method can be used to perform a comparison between strings that ignores case
differences?
Ans : equalsIgnoreCase( ) method.
What is the use of valueOf( ) method?
Ans : valueOf( ) method converts data from its internal format into a human-readable
form.
What are the uses of toLowerCase( ) and toUpperCase( ) methods?
Ans : The method toLowerCase( ) converts all the characters in a string from uppercase
to
lowercase.
The method toUpperCase( ) converts all the characters in a string from lowercase to
uppercase.
20
calypso
Which method can be used to find out the total allocated capacity of a StrinBuffer?
Ans : capacity( ) method.
Which method can be used to set the length of the buffer within a StringBuffer object?
Ans : setLength( ).
What is the difference between String and StringBuffer?
Ans : String objects are constants, whereas StringBuffer objects are not.
String class supports constant strings, whereas StringBuffer class supports growable,
modifiable strings.
What are wrapper classes?
Ans : Wrapper classes are classes that allow primitive types to be accessed as objects.
Which of the following is not a wrapper class?
String
Integer
Boolean
Character
Ans : a.
What is the output of the following program?
public class Question {
public static void main(String args[]) {
String s1 = "abc";
String s2 = "def";
String s3 = s1.concat(s2.toUpperCase( ) );
System.out.println(s1+s2+s3);
}
}
abcdefabcdef
abcabcDEFDEF
abcdefabcDEF
None of the above
ANS : c.
Which of the following methods are methods of the String class?
delete( )
append( )
reverse( )
replace( )
Ans : d.
Which of the following methods cause the String object referenced by s to be changed?
s.concat( )
s.toUpperCase( )
s.replace( )
s.valueOf( )
Ans : a and b.
String is a wrapper class?
True
False
Ans : b.
21
calypso
17) If you run the code below, what gets printed out?
String s=new String("Bicycle");
int iBegin=1;
char iEnd=3;
System.out.println(s.substring(iBegin,iEnd));
Bic
ic
c) icy
d) error: no method matching substring(int,char)
Ans : b.
18) Given the following declarations
String s1=new String("Hello")
EXPLORING JAVA.LANG
java.lang package is automatically imported into all programs.
True
False
Ans : a
What are the interfaces defined by java.lang?
Ans : Cloneable, Comparable and Runnable.
What are the constants defined by both Flaot and Double classes?
Ans : MAX_VALUE,
MIN_VALUE,
22
calypso
NaN,
POSITIVE_INFINITY,
NEGATIVE_INFINITY and
TYPE.
What are the constants defined by Byte, Short, Integer and Long?
Ans : MAX_VALUE,
MIN_VALUE and
TYPE.
What are the constants defined by both Float and Double classes?
Ans : MAX_RADIX,
MIN_RADIX,
MAX_VALUE,
MIN_VALUE and
TYPE.
What is the purpose of the Runtime class?
Ans : The purpose of the Runtime class is to provide access to the Java runtime system.
What is the purpose of the System class?
Ans : The purpose of the System class is to provide access to system resources.
Which class is extended by all other classes?
Ans : Object class is extended by all other classes.
Which class can be used to obtain design information about an object?
Ans : The Class class can be used to obtain information about an object’s design.
Which method is used to calculate the absolute value of a number?
Ans : abs( ) method.
What are E and PI?
Ans : E is the base of the natural logarithm and PI is the mathematical value pi.
Which of the following classes is used to perform basic console I/O?
System
SecurityManager
Math
Runtime
Ans : a.
Which of the following are true?
The Class class is the superclass of the Object class.
The Object class is final.
The Class class can be used to load other classes.
The ClassLoader class can be used to load other classes.
Ans : c and d.
Which of the following methods are methods of the Math class?
absolute( )
log( )
cosine( )
sine( )
Ans : b.
Which of the following are true about the Error and Exception classes?
Both classes extend Throwable.
23
calypso
System.out.println(ten + nine);
int i=1;
System.out.println(i + ten);
19 followed by 20
19 followed by 11
Error: Can't convert java lang Integer
d) 10 followed by 1
Ans : c.
24
calypso
Byte Streams : Byte Streams provide a convenient means for handling input and output of
bytes.
Character Streams : Character Streams provide a convenient means for handling input
and output of characters.
Byte Stream classes : Byte Streams are defined by using two abstract classes. They
are:InputStream and OutputStream.
Character Stream classes : Character Streams are defined by using two abstract classes.
They are : Reader and Writer.
Which of the following statements are true?
UTF characters are all 8-bits.
UTF characters are all 16-bits.
UTF characters are all 24-bits.
Unicode characters are all 16-bits.
Bytecode characters are all 16-bits.
Ans : d.
Which of the following statements are true?
When you construct an instance of File, if you do not use the filenaming semantics of the
local machine, the constructor will throw an IOException.
When you construct an instance of File, if the corresponding file does not exist on the
local file system, one will be created.
When an instance of File is garbage collected, the corresponding file on the local file
system is deleted.
None of the above.
Ans : a,b and c.
The File class contains a method that changes the current working directory.
True
False
Ans : b.
It is possible to use the File class to list the contents of the current working directory.
True
False
Ans : a.
Readers have methods that can read and return floats and doubles.
True
False
Ans : b.
You execute the code below in an empty directory. What is the result?
File f1 = new File("dirname");
File f2 = new File(f1, "filename");
A new directory called dirname is created in the current working directory.
A new directory called dirname is created in the current working directory. A new file
called filename is created in directory dirname.
A new directory called dirname and a new file called filename are created, both in the
current working directory.
A new file called filename is created in the current working directory.
No directory is created, and no file is created.
25
calypso
Ans : e.
What is the difference between the Reader/Writer class hierarchy and the
InputStream/OutputStream class hierarchy?
Ans : The Reader/Writer class hierarchy is character-oriented and the
InputStream/OutputStream class hierarchy is byte-oriented.
What is an I/O filter?
Ans : An I/O filter is an object that reads from one stream and writes to another, usually
altering the data in some way as it is passed from one stream to another.
What is the purpose of the File class?
Ans : The File class is used to create objects that provide access to the files and
directories of a local file system.
What interface must an object implement before it can be written to a stream as an
object?
Ans : An object must implement the Serializable or Externalizable interface before it can
be written to a stream as an object.
What is the difference between the File and RandomAccessFile classes?
Ans : The File class encapsulates the files and directories of the local file system. The
RandomAccessFile class provides the methods needed to directly access data contained
in any part of a file.
What class allows you to read objects directly from a stream?
Ans : The ObjectInputStream class supports the reading of objects from input streams.
What value does read( ) return when it has reached the end of a file?
Ans : The read( ) method returns – 1 when it has reached the end of a file.
What value does readLine( ) return when it has reached the end of a file?
Ans : The readLine( ) method returns null when it has reached the end of a file.
How many bits are used to represent Unicode, ASCII, UTF-16 and UTF-8 characters?
Ans : Unicode requires 16-bits and ASCII requires 8-bits. Although the ASCII character
set uses only 1-bits, it is usually represented as 8-bits. UTF-8 represents characters using
8, 16 and 18-bit patterns. UTF-16 uses 16-bit and larger bit patterns.
Which of the following are true?
The InputStream and OutputStream classes are byte-oriented.
The ObjectInputStream and ObjectOutputStream do not support serialized object input
and output.
The Reader and Writer classes are character-oriented.
The Reader and Writer classes are the preferred solution to serialized object output.
Ans : a and c.
Which of the following are true about I/O filters?
Filters are supported on input, but not on output.
Filters are supported by the InputStream/OutputStream class hierarchy, but not by the
Reader/Writer class hierarchy.
Filters read from one stream and write to another.
A filter may alter data that is read from one stream and written to another.
Ans : c and d.
Which of the following are true?
Any Unicode character is represented using 16-bits.
7-bits are needed to represent any ASCII character.
26
calypso
27
calypso
28
calypso
EVENT HANDLING
The event delegation model, introduced in release 1.1 of the JDK, is fully compatible
with the
event model.
True
False
Ans : b.
A component subclass that has executed enableEvents( ) to enable processing of a certain
kind of event cannot also use an adapter as a listener for the same kind of event.
True
29
calypso
False
Ans : b.
What is the highest-level event class of the event-delegation model?
Ans : The java.util.eventObject class is the highest-level class in the event-delegation
hierarchy.
What interface is extended by AWT event listeners?
Ans : All AWT event listeners extend the java.util.EventListener interface.
What class is the top of the AWT event hierarchy?
Ans : The java.awt.AWTEvent class is the highest-level class in the AWT event class
hierarchy.
What event results from the clicking of a button?
Ans : The ActionEvent event is generated as the result of the clicking of a button.
What is the relationship between an event-listener interface and an event-adapter class?
Ans : An event-listener interface defines the methods that must be implemented by an
event
handler for a particular kind of event.
An event adapter provides a default implementation of an event-listener interface.
In which package are most of the AWT events that support the event-delegation model
defined?
Ans : Most of the AWT–related events of the event-delegation model are defined in the
java.awt.event package. The AWTEvent class is defined in the java.awt package.
What is the advantage of the event-delegation model over the earlier event-inheritance
model?
Ans : The event-delegation has two advantages over the event-inheritance model. They
are :
It enables event handling by objects other than the ones that generate the events. This
allows a clean separation between a component’s design and its use.
It performs much better in applications where many events are generated. This
performance improvement is due to the fact that the event-delegation model does not
have to repeatedly process unhandled events, as is the case of the event-inheritance
model.
What is the purpose of the enableEvents( ) method?
Ans :The enableEvents( ) method is used to enable an event for a particular object.
Which of the following are true?
The event-inheritance model has replaced the event-delegation model.
The event-inheritance model is more efficient than the event-delegation model.
The event-delegation model uses event listeners to define the methods of event-handling
classes.
The event-delegation model uses the handleEvent( ) method to support event handling.
Ans : c.
Which of the following is the highest class in the event-delegation model?
java.util.EventListener
java.util.EventObject
java.awt.AWTEvent
java.awt.event.AWTEvent
Ans : b.
30
calypso
When two or more objects are added as listeners for the same event, which listener is first
invoked to handle the event?
The first object that was added as listener.
The last object that was added as listener.
There is no way to determine which listener will be invoked first.
It is impossible to have more than one listener for a given event.
Ans : c.
Which of the following components generate action events?
Buttons
Labels
Check boxes
Windows
Ans : a.
Which of the following are true?
A TextField object may generate an ActionEvent.
A TextArea object may generate an ActionEvent.
A Button object may generate an ActionEvent.
A MenuItem object may generate an ActionEvent.
Ans : a,c and d.
Which of the following are true?
The MouseListener interface defines methods for handling mouse clicks.
The MouseMotionListener interface defines methods for handling mouse clicks.
The MouseClickListener interface defines methods for handling mouse clicks.
The ActionListener interface defines methods for handling the clicking of a button.
Ans : a and d.
Suppose that you want to have an object eh handle the TextEvent of a TextArea object t.
How should you add eh as the event handler for t?
t.addTextListener(eh);
eh.addTextListener(t);
addTextListener(eh.t);
addTextListener(t,eh);
Ans : a.
What is the preferred way to handle an object’s events in Java 2?
Override the object’s handleEvent( ) method.
Add one or more event listeners to handle the events.
Have the object override its processEvent( ) methods.
Have the object override its dispatchEvent( ) methods.
Ans : b.
Which of the following are true?
A component may handle its own events by adding itself as an event listener.
A component may handle its own events by overriding its event-dispatching method.
A component may not handle oits own events.
A component may handle its own events only if it implements the handleEvent( )
method.
Ans : a and b.
31
calypso
APPLETS
What is an Applet? Should applets have constructors?
Ans : Applet is a dynamic and interactive program that runs inside a Web page
displayed by a Java capable browser. We don’t have the concept of Constructors in
Applets.
How do we read number information from my applet’s parameters, given that Applet’s
getParameter() method returns a string?
Ans : Use the parseInt() method in the Integer Class, the Float(String) constructor in the
Class Float, or the Double(String) constructor in the class Double.
How can I arrange for different applets on a web page to communicate with each other?
Ans : Name your applets inside the Applet tag and invoke AppletContext’s getApplet()
method in your applet code to obtain references to the other applets on the page.
How do I select a URL from my Applet and send the browser to that page?
Ans : Ask the applet for its applet context and invoke showDocument() on that context
object.
Eg. URL targetURL;
String URLString
AppletContext context = getAppletContext();
try{
targetUR L = new URL(URLString);
} catch (Malformed URLException e){
// Code for recover from the exception
}
context. showDocument (targetURL);
Can applets on different pages communicate with each other?
Ans : No. Not Directly. The applets will exchange the information at one meeting place
either on the local file system or at remote system.
How do Applets differ from Applications?
32
calypso
33
calypso
34
calypso
g.drawLine(0, 0, 100,100);
Red
Green
Yellow
Cyan
Black
Ans : d.
What does the following code draw?
g.setColor(Color.black);
g.drawLine(10, 10, 10, 50);
g.setColor(Color.RED);
g.drawRect(100, 100, 150, 150);
A red vertical line that is 40 pixels long and a red square with sides of 150 pixels
A black vertical line that is 40 pixels long and a red square with sides of 150 pixels
A black vertical line that is 50 pixels long and a red square with sides of 150 pixels
A red vertical line that is 50 pixels long and a red square with sides of 150 pixels
A black vertical line that is 40 pixels long and a red square with sides of 100 pixel
Ans : b.
Which of the statements below are true?
A polyline is always filled.
b) A polyline can not be filled.
c) A polygon is always filled.
d) A polygon is always closed
e) A polygon may be filled or not filled
Ans : b, d and e.
What code would you use to construct a 24-point bold serif font?
new Font(Font.SERIF, 24,Font.BOLD);
new Font("SERIF", 24, BOLD");
new Font("BOLD ", 24,Font.SERIF);
new Font("SERIF", Font.BOLD,24);
new Font(Font.SERIF, "BOLD", 24);
Ans : d.
What does the following paint( ) method draw?
Public void paint(Graphics g) {
g.drawString("question #6",10,0);
}
The string "question #6", with its top-left corner at 10,0
A little squiggle coming down from the top of the component, a little way in from the left
edge
Ans : b.
35
calypso
36
calypso
height
Ans : a, b and d.
Which of the following are true?
The AWT automatically causes a window to be repainted when a portion of a window
has been minimized and then maximized.
The AWT automatically causes a window to be repainted when a portion of a window
has been covered and then uncovered.
The AWT automatically causes a window to be repainted when application data is
changed.
The AWT does not support repainting operations.
Ans : a and b.
Which method is used to size a graphics object to fit the current size of the window?
Ans : getSize( ) method.
What are the methods to be used to set foreground and background colors?
Ans : setForeground( ) and setBackground( ) methods.
19) You have created a simple Frame and overridden the paint method as follows
public void paint(Graphics g){
g.drawString("Dolly",50,10);
}
What will be the result when you attempt to compile and run the program?
The string "Dolly" will be displayed at the centre of the frame
b) An error at compilation complaining at the signature of the paint method
c) The lower part of the word Dolly will be seen at the top of the form, with the top
hidden.
d) The string "Dolly" will be shown at the bottom of the form
Ans : c.
20) Where g is a graphics instance what will the following code draw on the screen.
g.fillArc(45,90,50,50,90,180);
a) An arc bounded by a box of height 45, width 90 with a centre point of 50,50, starting
at an angle of 90 degrees traversing through 180 degrees counter clockwise.
b) An arc bounded by a box of height 50, width 50, with a centre point of 45,90 starting
at an angle of 90 degrees traversing through 180 degrees clockwise.
c) An arc bounded by a box of height 50, width 50, with a top left at coordinates of 45,
90, starting at 90 degrees and traversing through 180 degrees counter clockwise.
d) An arc starting at 45 degrees, traversing through 90 degrees clockwise bounded by a
box of height 50, width 50 with a centre point of 90, 180.
Ans : c.
21) Given the following code
import java.awt.*;
public class SetF extends Frame{
public static void main(String argv[]){
SetF s = new SetF();
s.setSize(300,200);
s.setVisible(true);
37
calypso
}
}
How could you set the frame surface color to pink
a)s.setBackground(Color.pink);
b)s.setColor(PINK);
c)s.Background(pink);
d)s.color=Color.pink
Ans : a.
38
calypso
b) MenuComponent class
c) Dialog class
d) Applet class
e) Menu class
Ans : a) Container - Component
b) MenuComponent - Object
c) Dialog - Window
d) Applet - Panel
e) Menu - MenuItem
6) What are the SubClass of Textcomponent Class?
Ans : TextField and TextArea
7) Which method of the component class is used to set the position and the size of a
component?
Ans : setBounds()
8) Which TextComponent method is used to set a TextComponent to the read-only state?
Ans : setEditable()
9) How can the Checkbox class be used to create a radio button?
Ans : By associating Checkbox objects with a CheckboxGroup.
10) What Checkbox method allows you to tell if a Checkbox is checked?
Ans : getState()
11) Which Component method is used to access a component's immediate Container?
getVisible()
getImmediate
getParent()
getContainer
Ans : c.
12) What methods are used to get and set the text label displayed by a Button object?
Ans : getLabel( ) and setLabel( )
13) What is the difference between a Choice and a List?
Ans : A Choice is displayed in a compact form that requires you to pull it down to see the
list of available choices. Only one item may be selected from a Choice.
A List may be displayed in such a way that several List items are visible. A List supports
the selection of one or more List items.
14) Which Container method is used to cause a container to be laid out and redisplayed?
Ans : validate( )
15) What is the difference between a Scollbar and a Scrollpane?
Ans : A Scrollbar is a Component, but not a Container.
A Scrollpane is a Container and handles its own events and performs its own
scrolling.
16) Which Component subclass is used for drawing and painting?
Ans : Canvas.
17) Which of the following are direct or indirect subclasses of Component?
Button
Label
CheckboxMenuItem
Toolbar
39
calypso
Frame
Ans : a, b and e.
18) Which of the following are direct or indirect subclasses of Container?
Frame
TextArea
MenuBar
FileDialog
Applet
Ans : a,d and e.
19) Which method is used to set the text of a Label object?
setText( )
setLabel( )
setTextLabel( )
setLabelText( )
Ans : a.
20) Which constructor creates a TextArea with 10 rows and 20 columns?
new TextArea(10, 20)
new TextArea(20, 10)
new TextArea(new Rows(10), new columns(20))
new TextArea(200)
Ans : a.
(Usage is TextArea(rows, columns)
21) Which of the following creates a List with 5 visible items and multiple selection
enabled?
new List(5, true)
new List(true, 5)
new List(5, false)
new List(false,5)
Ans : a.
[Usage is List(rows, multipleMode)]
22) Which are true about the Container class?
The validate( ) method is used to cause a Container to be laid out and redisplayed.
The add( ) method is used to add a Component to a Container.
The getBorder( ) method returns information about a Container’s insets.
The getComponent( ) method is used to access a Component that is contained in a
Container.
Ans : a, b and d.
23) Suppose a Panel is added to a Frame and a Button is added to the Panel. If the
Frame’s font is set to 12-point TimesRoman, the Panel’s font is set to 10-point
TimesRoman, and the Button’s font is not set, what font will be used to dispaly the
Button’s label?
12-point TimesRoman
11-point TimesRoman
10-point TimesRoman
9-point TimesRoman
Ans : c.
40
calypso
41
calypso
and the new selection is highlighted. The exclusive Checkboxes are also called as Radio
buttons.
The non-exclusive checkboxes are not grouped together and each one can be selected
independent of the other.
35) What is a Layout Manager and what are the different Layout Managers available in
java.awt and what is the default Layout manager for the panal and the panal subclasses?
Ans: A layout Manager is an object that is used to organize components in a container.
The different layouts available in java.awt are :
FlowLayout, BorderLayout, CardLayout, GridLayout and GridBag Layout.
The default Layout Manager of Panal and Panal sub classes is FlowLayout".
36) Can I exert control over the size and placement of components in my interface?
Ans : Yes.
myPanal.setLayout(null);
myPanal.setbounds(20,20,200,200);
37) Can I add the same component to more than one container?
Ans : No. Adding a component to a container automatically removes it from any previous
parent(container).
38) How do I specify where a window is to be placed?
Ans : Use setBounds, setSize, or setLocation methods to implement this.
setBounds(int x, int y, int width, int height)
setBounds(Rectangle r)
setSize(int width, int height)
setSize(Dimension d)
setLocation(int x, int y)
setLocation(Point p)
42
calypso
CardLayout : The elements of a CardLayout are stacked, one on top of the other, like a
deck of cards.
GridLayout : The elements of a GridLayout are of equal size and are laid out using the
square of a grid.
GridBagLayout : The elements of a GridBagLayout are organized according to a
grid.However, the elements are of different sizes and may occupy
more than one row or column of the grid. In addition, the rows and columns may have
different sizes.
43) Which containers use a BorderLayout as their default layout?
Ans : The Window, Frame and Dialog classes use a BorderLayout as their default layout.
48) Which layout should you use to organize the components of a container in a
tabular form?
CardLayout
BorederLayout
FlowLayout
GridLayout
Ans : d.
An application has a frame that uses a Border layout manager. Why is it probably not a
good idea to put a vertical scroll bar at North in the frame?
The scroll bar’s height would be its preferred height, which is not likely to be enough.
The scroll bar’s width would be the entire width of the frame, which would be much
wider than necessary.
Both a and b.
43
calypso
56) How do you change the current layout manager for a container?
a) Use the setLayout method
b) Once created you cannot change the current layout manager of a component
c) Use the setLayoutManager method
d) Use the updateLayout method
Ans :a.
57)When using the GridBagLayout manager, each new component requires a new
instance of the GridBagConstraints class. Is this statement true or false?
a) true
b) false
44
calypso
Ans : b.
58) Which of the following statements are true?
a)The default layout manager for an Applet is FlowLayout
b) The default layout manager for an application is FlowLayout
c) A layout manager must be assigned to an Applet before the setSize method is called
d) The FlowLayout manager attempts to honor the preferred size of any components
Ans : a and d.
59) Which method does display the messages whenever there is an item selection or
deselection of the CheckboxMenuItem menu?
Ans : itemStateChanged method.
60) Which is a dual state menu item?
Ans : CheckboxMenuItem.
61) Which method can be used to enable/diable a checkbox menu item?
Ans : setState(boolean).
Which of the following may a menu contain?
A separator
A check box
A menu
A button
A panel
Ans : a and c.
Which of the following may contain a menu bar?
A panel
A frame
An applet
A menu bar
A menu
Ans : b
64) What is the difference between a MenuItem and a CheckboxMenuItem?
Ans : The CheckboxMenuItem class extends the MenuItem class to support a menu item
that may be checked or unchecked.
Which colour is used to indicate instance methods in the standard "javadoc" format
documentation:
1) blue
2) red
3) purple
4) orange
Answer : 2
45
calypso
explain
In JDK 1.1 the variabels, methods and constructors are colour coded to simplifytheir
identification.
endExplain
What is the correct ordering for the import, class and package declarations when found in
a single file?
1) package, import, class
2) class, import, package
3) import, package, class
4) package, class, import
Answer : 1
explain
This is my explanation for question 2
endExplain
Which methods can be legally applied to a string object?
(Multiple)
1) equals(String)
2) equals(Object)
3) trim()
4) round()
5) toString()
Answer : 1,2,3,5
What is the parameter specification for the public static void main method?
(multiple)
1) String args []
2) String [] args
3) Strings args []
4) String args
Answer : 1,2
What does the zeroth element of the string array passed to the public static void main
method contain?
(multiple)
1) The name of the program
2) The number of arguments
3) The first argument if one is present
Answer : 3
Which of the following are Java keywords?
(multiple)
1) goto
2) malloc
3) extends
4) FALSE
Answer : 3
What will be the result of compiling the following code:
public class Test {
public static void main (String args []) {
46
calypso
int age;
age = age + 1;
System.out.println("The age is " + age);
}
}
1) Compiles and runs with no output
2) Compiles and runs printing out The age is 1
3) Compiles but generates a runtime error
4) Does not compile
5) Compiles but generates a compile time error
Answer : 4
Which of these is the correct format to use to create the literal char value a?
(multiple)
1) 'a'
2) "a"
3) new Character(a)
4) \000a
Answer : 1
What is the legal range of a byte integral type?
1) 0 - 65, 535
2) (-128) - 127
3) (-32,768) - 32,767
4) (-256) - 255
Answer : 2
Which of the following is illegal:
1) int i = 32;
2) float f = 45.0;
3) double d = 45.0;
Answer 2
What will be the result of compiling the following code:
public class Test {
static int age;
public static void main (String args []) {
age = age + 1;
System.out.println("The age is " + age);
}
}
1) Compiles and runs with no output
2) Compiles and runs printing out The age is 1
3) Compiles but generates a runtime error
4) Does not compile
5) Compiles but generates a compile time error
Answer : 2
Which of the following are correct?
(multiple)
1) 128 >> 1 gives 64
47
calypso
48
calypso
}
}
(multiple)
1) The class will not compile
2) The compiler reports and error at line 2
3) The compiler reports an error at line 9
4) The value 10 is one of the elements printed to the standard output
5) The class compiles but generates a runtime error
Answer : 4
Which of the following is correct:
1) String temp [] = new String {"j" "a" "z"};
2) String temp [] = { "j " " b" "c"};
3) String temp = {"a", "b", "c"};
4) String temp [] = {"a", "b", "c"};
Answer 4
What is the correct declaration of an abstract method that is intended to be public:
1) public abstract void add();
2) public abstract void add() {}
3) public abstract add();
4) public virtual add();
Answer : 1
Under what situations do you obtain a default constructor?
1) When you define any class
2) When the class has no other constructors
3) When you define at least one constructor
Answer : 2
Which of the following can be used to define a constructor for this class, given the
following code:
public class Test {
...
}
1) public void Test() {...}
2) public Test() {...}
3) public static Test() {...}
4) public static void Test() {...}
Answer : 2
Which of the following are acceptable to the Java compiler:
(multiple)
1) if (2 == 3) System.out.println("Hi");
2) if (2 = 3) System.out.println("Hi");
3) if (true) System.out.println("Hi");
4) if (2 != 3) System.out.println("Hi");
5) if (aString.equals("hello")) System.out.println("Hi");
Answer : 1,3,4,5
49
calypso
Assuming a method contains code which may raise an Exception (but not a
RuntimeException), what is the correct way for a method to indicate that it expects the
caller to handle that exception:
1) throw Exception
2) throws Exception
3) new Exception
4) Don't need to specify anything
Answer : 2
What is the result of executing the following code, using the parameters 4 and 0:
public void divide(int a, int b) {
try {
int c = a / b;
} catch (Exception e) {
System.out.print("Exception ");
} finally {
System.out.println("Finally");
}
1) Prints out: Exception Finally
2) Prints out: Finally
3) Prints out: Exception
4) No output
Answer : 1
Which of the following is a legal return type of a method overloading the following
method:
public void add(int a) {...}
1) void
2) int
3) Can be anything
Answer : 3
Which of the following statements is correct for a method which is overriding the
following method:
public void add(int a) {...}
1) the overriding method must return void
2) the overriding method must return int
3) the overriding method can return whatever it likes
Answer : 1
Given the following classes defined in separate files, what will be the effect of compiling
and running this class Test?
class Vehicle {
public void drive() {
System.out.println("Vehicle: drive");
}
}
class Car extends Vehicle {
public void drive() {
System.out.println("Car: drive");
50
calypso
}
}
public class Test {
public static void main (String args []) {
Vehicle v;
Car c;
v = new Vehicle();
c = new Car();
v.drive();
c.drive();
v = c;
v.drive();
}
}
1) Generates a Compiler error on the statement v= c;
2) Generates runtime error on the statement v= c;
3) Prints out:
Vehicle: drive
Car: drive
Car: drive
4) Prints out:
Vehicle: drive
Car: drive
Vehicle: drive
Answer : 3
Where in a constructor, can you place a call to a constructor defined in the super class?
1) Anywhere
2) The first statement in the constructor
3) The last statement in the constructor
4) You can't call super in a constructor
Answer : 2
Which variables can an inner class access from the class which encapsulates it?
(multiple)
1) All static variables
2) All final variables
3) All instance variables
4) Only final instance variables
5) Only final static variables
Answer : 1,2,3
What class must an inner class extend:
1) The top level class
2) The Object class
3) Any class or interface
4) It must extend an interface
Answer 3
51
calypso
In the following code, which is the earliest statement, where the object originally held in
e, may be garbage collected:
1. public class Test {
2. public static void main (String args []) {
3. Employee e = new Employee("Bob", 48);
4. e.calculatePay();
5. System.out.println(e.printDetails());
6. e = null;
7. e = new Employee("Denise", 36);
8. e.calculatePay();
9. System.out.println(e.printDetails());
10. }
11. }
1) Line 10
2) Line 11
3) Line 7
4) Line 8
5) Never
Answer : 3
What is the name of the interface that can be used to define a class that can execute
within its own thread?
1) Runnable
2) Run
3) Threadable
4) Thread
5) Executable
Answer : 1
What is the name of the method used to schedule a thread for execution?
1) init();
2) start();
3) run();
4) resume();
5) sleep();
Answer : 2
Which methods may cause a thread to stop executing?
(multiple)
1) sleep();
2) stop();
3) yield();
4) wait();
5) notify();
6) notifyAll()
7) synchronized()
Answer : 1,2,3,4
Which of the following would create a text field able to display 10 characters (assuming a
fixed size font) displaying the initial string "hello":
52
calypso
53
calypso
Answer : 2
The layout of a container can be altered using which of the following methods:
(multiple)
1) setLayout(aLayoutManager);
2) addLayout(aLayoutManager);
3) layout(aLayoutManager);
4) setLayoutManager(aLayoutManager);
Answer : 1
Using a FlowLayout manager, which is the correct way to add elements to a container:
1) add(component);
2) add("Center", component);
3) add(x, y, component);
4) set(component);
Answer : 1
Given that a Button can generate an ActionEvent which listener would you expect to
have to implement, in a class which would handle this event?
1) FocusListener
2) ComponentListener
3) WindowListener
4) ActionListener
5) ItemListener
Answer : 4
Which of the following, are valid return types, for listener methods:
1) boolean
2) the type of event handled
3) void
4) Component
Answer : 3
Assuming we have a class which implements the ActionListener interface, which method
should be used to register this with a Button?
1) addListener(*);
2) addActionListener(*);
3) addButtonListener(*);
4) setListener(*);
Answer : 2
In order to cause the paint(Graphics) method to execute, which of the following is the
most appropriate method to call:
1) paint()
2) repaint()
3) paint(Graphics)
4) update(Graphics)
5) None - you should never cause paint(Graphics) to execute
Answer : 2
Which of the following illustrates the correct way to pass a parameter into an applet:
1) <applet code=Test.class age=33 width=100 height=100>
2) <param name=age value=33>
54
calypso
55
calypso
}
public class Second extends First {
public static void main(String args []) {
new Second();
}
}
1) Nothing happens
2) A string is printed to the standard out
3) An instance of the class First is generated
4) An instance of the class Second is created
5) An exception is raised at runtime stating that there is no null parameter constructor in
class First.
6) The class second will not compile as there is no null parameter constructor in the class
First
Answer : 6
What is the result of executing the following fragment of code:
boolean flag = false;
if (flag = true) {
System.out.println("true");
} else {
System.out.println("false");
}
1) true is printed to standard out
2) false is printed to standard out
3) An exception is raised
4) Nothing happens
Answer : 1
Consider the following classes. What is the result of compiling and running this class?
public class Test {
public static void test() {
this.print();
}
public static void print() {
System.out.println("Test");
}
public static void main(String args []) {
test();
}
}
(multiple)
1) The string Test is printed to the standard out.
2) A runtime exception is raised stating that an object has not been created.
3) Nothing is printed to the standard output.
4) An exception is raised stating that the method test cannot be found.
5) An exception is raised stating that the variable this can only be used within an
instance.
56
calypso
6) The class fails to compile stating that the variable this is undefined.
Answer : 6
Examine the following class definition:
public class Test {
public static void test() {
print();
}
public static void print() {
System.out.println("Test");
}
public void print() {
System.out.println("Another Test");
}
}
What is the result of compiling this class:
1) A successful compilation.
2) A warning stating that the class has no main method.
3) An error stating that there is a duplicated method.
4) An error stating that the method test() will call one or other of the print() methods.
Answer : 3
What is the result of compiling and executing the following Java class:
public class ThreadTest extends Thread {
public void run() {
System.out.println("In run");
suspend();
resume();
System.out.println("Leaving run");
}
public static void main(String args []) {
(new ThreadTest()).start();
}
}
1) Compilation will fail in the method main.
2) Compilation will fail in the method run.
3) A warning will be generated for method run.
4) The string "In run" will be printed to standard out.
5) Both strings will be printed to standard out.
6) Nothing will happen.
Answer : 4
Given the following sequence of Java statements, Which of the following options are
true:
1. StringBuffer sb = new StringBuffer("abc");
2. String s = new String("abc");
3. sb.append("def");
4. s.append("def");
5. sb.insert(1, "zzz");
57
calypso
6. s.concat(sb);
7. s.trim();
(multiple)
1) The compiler would generate an error for line 1.
2) The compiler would generate an error for line 2.
3) The compiler would generate an error for line 3.
4) The compiler would generate an error for line 4.
5) The compiler would generate an error for line 5.
6) The compiler would generate an error for line 6.
7) The compiler would generate an error for line 7.
Answer : 4,6
What is the result of executing the following Java class:
import java.awt.*;
public class FrameTest extends Frame {
public FrameTest() {
add (new Button("First"));
add (new Button("Second"));
add (new Button("Third"));
pack();
setVisible(true);
}
public static void main(String args []) {
new FrameTest();
}
}
1) Nothing happens.
2) Three buttons are displayed across a window.
3) A runtime exception is generated (no layout manager specified).
4) Only the "first" button is displayed.
5) Only the "second" button is displayed.
6) Only the "third" button is displayed.
Answer : 6
Consider the following tags and attributes of tags, which can be used with the
<AAPLET> and </APPLET> tags?
1. CODEBASE
2. ALT
3. NAME
4. CLASS
5. JAVAC
6. HORIZONTALSPACE
7. VERTICALSPACE
8. WIDTH
9. PARAM
10. JAR
(multiple)
1) line 1, 2, 3
58
calypso
2) line 2, 5, 6, 7
3) line 3, 4, 5
4) line 8, 9, 10
5) line 8, 9
Answer : 1,5
Which of the following is a legal way to construct a RandomAccessFile:
1) RandomAccessFile("data", "r");
2) RandomAccessFile("r", "data");
3) RandomAccessFile("data", "read");
4) RandomAccessFile("read", "data");
Answer : 1
Carefully examine the following code, When will the string "Hi there" be printed?
public class StaticTest {
static {
System.out.println("Hi there");
}
public void print() {
System.out.println("Hello");
}
public static void main(String args []) {
StaticTest st1 = new StaticTest();
st1.print();
StaticTest st2 = new StaticTest();
st2.print();
}
}
1) Never.
2) Each time a new instance is created.
3) Once when the class is first loaded into the Java virtual machine.
4) Only when the static method is called explicitly.
Answer : 3
What is the result of the following program:
public class Test {
public static void main (String args []) {
boolean a = false;
if (a = true)
System.out.println("Hello");
else
System.out.println("Goodbye");
}
}
1) Program produces no output but terminates correctly.
2) Program does not terminate.
3) Prints out "Hello"
4) Prints out "Goodbye"
Answer : 3
59
calypso
Examine the following code, it includes an inner class, what is the result:
public final class Test4 {
class Inner {
void test() {
if (Test4.this.flag); {
sample();
}
}
}
private boolean flag = true;
public void sample() {
System.out.println("Sample");
}
public Test4() {
(new Inner()).test();
}
public static void main(String args []) {
new Test4();
}
}
1) Prints out "Sample"
2) Program produces no output but terminates correctly.
3) Program does not terminate.
4) The program will not compile
Answer : 1
Carefully examine the following class:
public class Test5 {
public static void main (String args []) {
/* This is the start of a comment
if (true) {
Test5 = new test5();
System.out.println("Done the test");
}
/* This is another comment */
System.out.println ("The end");
}
}
1) Prints out "Done the test" and nothing else.
2) Program produces no output but terminates correctly.
3) Program does not terminate.
4) The program will not compile.
5) The program generates a runtime exception.
6) The program prints out "The end" and nothing else.
7) The program prints out "Done the test" and "The end"
Answer : 6
What is the result of compiling and running the following applet:
60
calypso
import java.applet.Applet;
import java.awt.*;
public class Sample extends Applet {
private String text = "Hello World";
public void init() {
add(new Label(text));
}
public Sample (String string) {
text = string;
}
}
It is accessed form the following HTML page:
<html>
<title>Sample Applet</title>
<body>
<applet code="Sample.class" width=200 height=200></applet>
</body>
</html>
1) Prints "Hello World".
2) Generates a runtime error.
3) Does nothing.
4) Generates a compile time error.
Answer : 2
What is the effect of compiling and (if possible) running this class:
public class Calc {
public static void main (String args []) {
int total = 0;
for (int i = 0, j = 10; total > 30; ++i, --j) {
System.out.println(" i = " + i + " : j = " + j);
total += (i + j);
}
System.out.println("Total " + total);
}
}
1) Produce a runtime error
2) Produce a compile time error
3) Print out "Total 0"
4) Generate the following as output:
i = 0 : j = 10
i=1:j=9
i=2:j=8
Total 30
Answer : 3
61
calypso
Utility Package
62
calypso
63
calypso
64
calypso
JDBC
1) What are the steps involved in establishing a connection?
ANSWER : This involves two steps: (1) loading the driver and (2) making the
connection.
2) How can you load the drivers?
ANSWER : Loading the driver or drivers you want to use is very simple and involves
just one line of code. If, for example, you want to use the JDBC-ODBC Bridge driver, the
following code will load it:
Eg.
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Your driver documentation will give you the class name to use. For instance, if the class
name is jdbc.DriverXYZ , you would load the driver with the following line of code:
Eg.
Class.forName("jdbc.DriverXYZ");
3) What Class.forName will do while loading drivers?
ANSWER : It is used to create an instance of a driver and register it with the
DriverManager.
When you have loaded a driver, it is available for making a connection with a DBMS.
4) How can you make the connection?
ANSWER : In establishing a connection is to have the appropriate driver connect to the
DBMS. The following line of code illustrates the general idea:
Eg.
String url = "jdbc:odbc:Fred";
Connection con = DriverManager.getConnection(url, "Fernanda", "J8");
5) How can you create JDBC statements?
ANSWER : A Statement object is what sends your SQL statement to the DBMS. You
simply create a Statement object and then execute it, supplying the appropriate execute
method with the SQL statement you want to send. For a SELECT statement, the method
to use is executeQuery. For statements that create or modify tables, the method to use is
executeUpdate.
Eg.
It takes an instance of an active connection to create a Statement object. In the following
example, we use our Connection object con to create the Statement object stmt :
Statement stmt = con.createStatement();
6) How can you retrieve data from the ResultSet?
ANSWER : Step 1.
JDBC returns results in a ResultSet object, so we need to declare an instance of the class
ResultSet to hold our results. The following code demonstrates declaring the ResultSet
object rs.
Eg.
65
calypso
66
calypso
67
calypso
Networking Concepts
1) The API doesn't list any constructors for InetAddress- How do I create an
InetAddress instance?
ANSWER : In case of InetAddress the three methods getLocalHost, getByName,
getByAllName can be used to create instances.
E.g.
InetAddress add1;
InetAddress add2;
try{
add1 = InetAddress.getByName("java.sun.com");
add2 = InetAddress.getByName("199.22.22.22");
}catch(UnknownHostException e){}
2) Is it possible to get the Local host IP?
ANSWER : Yes. Use InetAddress's getLocalHost method.
68
calypso
69
calypso
3) What Is a Socket?
A socket is one end-point of a two-way communication link between two programs
running on the network. A socket is bound to a port number so that the TCP layer can
identify the application that data is destined to be sent.Socket classes are used to
represent the connection between a client program and a server program. The java.net
package provides two classes--Socket and ServerSocket--which implement the client side
of the connection and the server side of the connection, respectively.
What information is needed to create a TCP Socket?
ANSWER : The Local System’s IP Address and Port Number.
And the Remote System's IPAddress and Port Number.
5) What are the two important TCP Socket classes?
ANSWER : Socket and ServerSocket.
ServerSocket is used for normal two-way socket communication. Socket class allows us
to read and write through the sockets.
getInputStream() and getOutputStream() are the two methods available in Socket class.
When MalformedURLException and UnknownHostException throws?
ANSWER : When the specified URL is not connected then the URL throw
MalformedURLException and If InetAddress’ methods getByName and getLocalHost
are unabletoresolve the host name they throwan UnknownHostException.
Servlets
70
calypso
ANSWER : A servlet can handle multiple requests concurrently, and can synchronize
requests. This allows servlets to support systems such as on-line conferencing.
Servlets can forward requests to other servers and servlets.Thus servlets can be used to
balance load among several servers that mirror the same content, and to partition a single
logical service over several servers, according to task type or organizational boundaries.
4) Which pakage provides interfaces and classes for writing servlets?
ANSWER : javax
5) Whats the Servlet Interfcae?
ANSWER : The central abstraction in the Servlet API is the Servlet interface. All
servlets implement this interface, either directly or, more commonly, by extending a class
that implements it such as HttpServlet.
Servlets-->Generic Servlet-->HttpServlet-->MyServlet.
The Servlet interface declares, but does not implement, methods that manage the servlet
and its communications with clients. Servlet writers provide some or all of these methods
when developing a servlet.
6) When a servlet accepts a call from a client, it receives two objects- What are
they?
ANSWER : ServeltRequest: Which encapsulates the communication from the client to
the server.
ServletResponse: Whcih encapsulates the communication from the servlet back to the
client.
ServletRequest and ServletResponse are interfaces defined by the javax.servlet package.
7) What information that the ServletRequest interface allows the servlet access to?
ANSWER : Information such as the names of the parameters passed in by the client, the
protocol (scheme) being used by the client, and the names of the remote host that made
the request and the server that received it.
The input stream, ServletInputStream.Servlets use the input stream to get data from
clients that use application protocols such as the HTTP POST and PUT methods.
8) What information that the ServletResponse interface gives the servlet methods
for replying to the client?
ANSWER : It Allows the servlet to set the content length and MIME type of the reply.
Provides an output stream, ServletOutputStream and a Writer through which the servlet
can send the reply data.
9) What is the servlet Lifecycle?
ANSWER : Each servlet has the same life cycle:
A server loads and initializes the servlet (init())
The servlet handles zero or more client requests (service())
The server removes the servlet (destroy())
(some servers do this step only when they shut down)
10) How HTTP Servlet handles client requests?
ANSWER : An HTTP Servlet handles client requests through its service method. The
service method supports standard HTTP client requests by dispatching each request to a
method designed to handle that request. 1
Encapsulation :
71
calypso
Encapsulation is the mechanism that binds together code and the data it manipulates and
keeps both safe from outside interference and misuse.
Inheritance:
Inheritance is the process by which one object acquires the properties of another object.
Polymorphism:
Polymorphism is a feature that allows one interface to be used for a general class of
actions. The specific action is determined by the exact nature of actions.
Code Blocks:
Two or more statements which is allowed to be grouped into blocks of code is otherwise
called as Code Blocks.This is done by enclosing the statements between opening and
closing curly braces.
Floating-point numbers:
Floating-point numbers which is also known as real numbers, are used when evaluating
expressions that require fractional precision.
Unicode:
Unicode defines a fully international character set that can represent all of the characters
found in all human languages. It is a unification of dozens of character sets, such as
Latin, Greek, Arabic and many more.
Booleans:
Java has a simple type called boolean, for logical values. It can have only on of two
possible values, true or false.
Casting:
A cast is simply an explicit type conversion. To create a conversion between two
incompatible types, you must use a cast.
Arrays:
An array is a group of like-typed variables that are referred to by a common name. Arrays
offer a convenient means of grouping related information. Arrays of any type can be
created and may have one or more dimension.
Relational Operators:
The relational operators determine the relationship that one operand has to the other.
They determine the equality and ordering.
11.Short-Circuit Logical Operators:
The secondary versions of the Boolean AND and OR operators are known as short-
circuit logical operators. It is represented by || and &&..
12. Switch:
The switch statement is Java’s multiway branch statement. It provides an easy way to
dispatch execution to different parts of your code based on the value of an
experession.
13. Jump Statements:
Jump statements are the statements which transfer control to another part of your
program. Java Supports three jump statements: break, continue, and return.
14. Instance Variables:
The data, or variable, defined within a class are called instance variable.
72
calypso
73