0% found this document useful (0 votes)
4 views23 pages

Java VIVA Question

The document provides a comprehensive overview of Java, covering its definition, features, supported platforms, and key concepts such as object-oriented programming, inheritance, and encapsulation. It also discusses various Java components, including JDBC, servlets, applets, and exception handling, along with their functionalities and differences. Additionally, it addresses Java's architecture, memory management, and threading concepts, making it a valuable resource for understanding Java programming.

Uploaded by

Ashok B P
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOC, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
4 views23 pages

Java VIVA Question

The document provides a comprehensive overview of Java, covering its definition, features, supported platforms, and key concepts such as object-oriented programming, inheritance, and encapsulation. It also discusses various Java components, including JDBC, servlets, applets, and exception handling, along with their functionalities and differences. Additionally, it addresses Java's architecture, memory management, and threading concepts, making it a valuable resource for understanding Java programming.

Uploaded by

Ashok B P
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOC, PDF, TXT or read online on Scribd
You are on page 1/ 23

1. What is Java?

Java is a object-oriented programming language originally developed by Sun Micro systems


and released in 1995. Java runs on a variety of platforms, such as Windows, Mac OS, and the
various versions of UNIX.
2. What are the supported platforms by Java Programming Language?
Java runs on a variety of platforms, such as Windows, Mac OS, and the various versions of
UNIX/Linux like HP-Unix, Sun Solaris, Red hat Linux, Ubuntu, Cent OS, etc.
3. List any five features of Java?
Some features include Object Oriented
Platform Independent
Robust
Interpreted
Multi-threaded
4. Why is Java Architectural Neutral?
It’s compiler generates an architecture-neutral object file format, which makes the compiled
code to be executable on many processors, with the presence of Java runtime system.
5. What is a singleton class? Give a practical example of its usage.
A singleton class in java can have only one instance and hence all its methods and variables
belong to just one instance. Singleton class concept is useful for the situations when there is a
need to limit the number of objects for a class.
The best example of singleton usage scenario is when there is a limit of having only one
connection to a database due to some driver limitations or because of any licensing issues.
6. What are the access modifiers in Java?
There are 3 access modifiers. Public, protected and private, and the default one if no identifier
is specified is called friendly, but programmer cannot specify the friendly identifier explicitly.
7. What is are packages?
A package is a collection of related classes and interfaces providing access protection and
namespace management.
8. What is meant by Inheritance and What are its advantages?

Inheritance is the process of inheriting all the features from a class. The advantages of
inheritance are reusability of code and accessibility of variables and methods of the super
class by subclasses.
9. What is the difference between superclass and subclass?
A super class is a class that is inherited whereas sub class is a class that does the inheriting.
10. What is an abstract class?
An abstract class is a class designed with implementation gaps for subclasses to fill in and is
deliberately incomplete.
11. What are the states associated in the thread?
Thread contains ready, running, waiting and dead states.
12. What is synchronization?
Synchronization is the mechanism that ensures that only one thread is accessed the resources
at a time.
13. What is deadlock?
When two threads are waiting each other and can’t precede the program is said to be
deadlock.
14. What is an applet?
Applet is a dynamic and interactive program that runs inside a web page displayed by a java
capable browser
15. What is the lifecycle of an applet?
init() method – Can be called when an applet is first loaded
start() method – Can be called each time an applet is started.
paint() method – Can be called when the applet is minimized or maximized.
stop() method – Can be used when the browser moves off the applet’s page.
destroy() method – Can be called when the browser is finished with the applet.
16. Define How do you set security in applets?
using setSecurityManager() method
17. What is a layout manager and What are different types of layout managers available in
java AWT?
A layout manager is an object that is used to organize components in a container. The
different layouts are available are FlowLayout, BorderLayout, CardLayout, GridLayout and
GridBagLayout
18. What is JDBC?
JDBC is a set of Java API for executing SQL statements. This API consists of a set of classes
and interfaces to enable programs to write pure Java Database applications.
19. What are drivers available?
JDBC-ODBC Bridge driver
Native API Partly-Java driver
JDBC-Net Pure Java driver
Native-Protocol Pure Java driver
20. What is stored procedure?
Stored procedure is a group of SQL statements that forms a logical unit and performs a
particular task. Stored Procedures are used to encapsulate a set of operations or queries to
execute on database. Stored procedures can be compiled and executed with different
parameters and results and may have any combination of input/output parameters.
21. What is the Java API?
The Java API is a large collection of ready-made software components that provide many
useful capabilities, such as graphical user interface (GUI) widgets.
22. Why there are no global variables in Java?
Global variables are globally accessible. Java does not support globally accessible variables
due to following reasons:
The global variables breaks the referential transparency
Global variables creates collisions in namespace.
23. What are Encapsulation, Inheritance and Polymorphism?
Encapsulation is the mechanism that binds together code and 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 the feature that allows one
interface to be used for general class actions.
24. What is the use of bin and lib in JDK?
Bin contains all tools such as javac, appletviewer, awt tool, etc., whereas lib contains API and
all packages.
25. What is method overloading and method overriding?
Method overloading: When a method in a class having the same method name with different
arguments is said to be method overloading. Method overriding : When a method in a class
having the same method name with same arguments is said to be method overriding.
26. What is the difference between this() and super()?
this() can be used to invoke a constructor of the same class whereas super() can be used to
invoke a super class constructor.
27. What is Domain Naming Service(DNS)?
It is very difficult to remember a set of numbers(IP address) to connect to the Internet. The
Domain Naming Service(DNS) is used to overcome this problem. It maps one particular IP
address to a string of characters. For example, www. mascom. com implies com is the
domain name reserved for US commercial sites, moscom is the name of the company and
www is the name of the specific computer, which is mascom’s server.
28. What is URL?
URL stands for Uniform Resource Locator and it points to resource files on the Internet. URL
has four components: http://www. address. com:80/index.html, where http – protocol name,
address – IP address or host name, 80 – port number and index.html – file path.
29. What is RMI and steps involved in developing an RMI object?
Remote Method Invocation (RMI) allows java object that executes on one machine and to
invoke the method of a Java object to execute on another machine. The steps involved in
developing an RMI object are: a) Define the interfaces b) Implementing these interfaces c)
Compile the interfaces and their implementations with the java compiler d) Compile the
server implementation with RMI compiler e) Run the RMI registry f) Run the application.
30. What is RMI architecture?
RMI architecture consists of four layers and each layer performs specific functions: a)
Application layer – contains the actual object definition. b) Proxy layer – consists of stub and
skeleton. c) Remote Reference layer – gets the stream of bytes from the transport layer and
sends it to the proxy layer. d) Transportation layer – responsible for handling the actual
machine-to-machine communication.
31. What is a Java Bean?
A Java Bean is a software component that has been designed to be reusable in a variety of
different environments.
32. What are checked exceptions?
Checked exception are those which the Java compiler forces you to catch. e.g. IOException
are checked Exceptions.
33. What are runtime exceptions?
Runtime exceptions are those exceptions that are thrown at runtime because of either wrong
input data or because of wrong business logic etc. These are not checked by the compiler at
compile time.
34. What is the difference between error and an exception?

An error is an irrecoverable condition occurring at runtime. Such as OutOfMemory error.


These JVM errors and you can not repair them at runtime. While exceptions are conditions
that occur because of bad input etc. e.g. FileNotFoundException will be thrown if the
specified file does not exist. Or a NullPointerException will take place if you try using a null
reference. In most of the cases it is possible to recover from an exception (probably by giving
user a feedback for entering proper values etc.).

35. What is the purpose of finalization?

The purpose of finalization is to give an unreachable object the opportunity to perform any
cleanup processing before the object is garbage collected. For example, closing a opened file,
closing a opened database Connection.

36. What is the difference between yielding and sleeping?

When a task invokes its yield() method, it returns to the ready state. When a task invokes its
sleep() method, it returns to the waiting state.

37. What is the difference between preemptive scheduling and time slicing?

Under preemptive scheduling, the highest priority task executes until it enters the waiting or
dead states or a higher priority task comes into existence. Under time slicing, a task executes
for a predefined slice of time and then reenters the pool of ready tasks. The scheduler then
determines which task should execute next, based on priority and other factors.

38. What is mutable object and immutable object?

If a object value is changeable then we can call it as Mutable object. (Ex., StringBuffer, …) If
you are not allowed to change the value of an object, it is immutable object. (Ex., String,
Integer, Float, …)

39. What is the purpose of Void class?

The Void class is an uninstantiable placeholder class to hold a reference to the Class object
representing the early Java type void.

40. What is JIT and its use?


Really, just a very fast compiler… In this incarnation, pretty much a one-pass compiler — no
offline computations. So you can’t look at the whole method, rank the expressions according
to which ones are re-used the most, and then generate code. In theory terms, it’s an on-line
problem.

41. What is nested class?

If all the methods of a inner class is static then it is a nested class.

42. What is HashMap and Map?

Map is Interface and Hashmap is class that implements that.

43. What are different types of access modifiers?

public: Any thing declared as public can be accessed from anywhere. private: Any thing
declared as private can’t be seen outside of its class. protected: Any thing declared as
protected can be accessed by classes in the same package and subclasses in the other
packages. default modifier : Can be accessed only to classes in the same package.

44. What is the difference between Reader/Writer and InputStream/Output Stream?

The Reader/Writer class is character-oriented and the InputStream/OutputStream class is


byte-oriented.

45. What is servlet?

Servlets are modules that extend request/response-oriented servers, such as java-enabled web
servers. For example, a servlet might be responsible for taking data in an HTML order-entry
form and applying the business logic used to update a company’s order database.

46. What is Constructor?

A constructor is a special method whose task is to initialize the object of its class.
It is special because its name is the same as the class name.
They do not have return types, not even void and therefore they cannot return values.
They cannot be inherited, though a derived class can call the base class constructor.
Constructor is invoked whenever an object of its associated class is created.
47. What is an Iterator ?

The Iterator interface is used to step through the elements of a Collection.


Iterators let you process each element of a Collection.
Iterators are a generic way to go through all the elements of a Collection no matter Define
How it is organized.
Iterator is an Interface implemented a different way for every Collection.
48. What is the List interface?

The List interface provides support for ordered collections of objects.


Lists may contain duplicate elements.
49. What is memory leak?

A memory leak is where an unreferenced object that will never be used again still hangs
around in memory and doesnt get garbage collected.

50. What is the difference between the prefix and postfix forms of the ++ operator?

The prefix form performs the increment operation and returns the value of the increment
operation. The postfix form returns the current value all of the expression and then performs
the increment operation on that value.

51. What is the difference between a constructor and a method?

A constructor is a member function of a class that is used to create objects of that class. It has
the same name as the class itself, has no return type, and is invoked using the new operator.
A method is an ordinary member function of a class. It has its own name, a return type
(which may be void), and is invoked using the dot operator.
52. What will happen to the Exception object after exception handling?

Exception object will be garbage collected.

53. Difference between static and dynamic class loading.

Static class loading: The process of loading a class using new operator is called static class
loading. Dynamic class loading: The process of loading a class at runtime is called dynamic
class loading.
Dynamic class loading can be done by using Class.forName(….).newInstance().

54. Explain the Common use of EJB

The EJBs can be used to incorporate business logic in a web-centric application.


The EJBs can be used to integrate business processes in Business-to-business (B2B) e-
commerce applications.In Enterprise Application Integration applications, EJBs can be used
to house processing and mapping between different applications.
55. What is JSP?

JSP is a technology that returns dynamic content to the Web client using HTML, XML and
JAVA elements. JSP page looks like a HTML page but is a servlet. It contains Presentation
logic and business logic of a web application.
56. What is the purpose of apache tomcat?

Apache server is a standalone server that is used to test servlets and create JSP pages. It is
free and open source that is integrated in the Apache web server. It is fast, reliable server to
configure the applications but it is hard to install. It is a servlet container that includes tools to
configure and manage the server to run the applications. It can also be configured by editing
XML configuration files.

57. Where pragma is used?

Pragma is used inside the servlets in the header with a certain value. The value is of no-cache
that tells that a servlets is acting as a proxy and it has to forward request. Pragma directives
allow the compiler to use machine and operating system features while keeping the overall
functionality with the Java language. These are different for different compilers.

58. Briefly explain daemon thread.

Daemon thread is a low priority thread which runs in the background performs garbage
collection operation for the java runtime system.

59. What is a native method?

A native method is a method that is implemented in a language other than Java.

60. Explain different way of using thread?

A Java thread could be implemented by using Runnable interface or by extending the Thread
class. The Runnable is more advantageous, when you are going for multiple inheritance.

61. What are the two major components of JDBC?

One implementation interface for database manufacturers, the other implementation interface
for application and applet writers.

62. What kind of thread is the Garbage collector thread?

It is a daemon thread.

63. What are the different ways to handle exceptions?

There are two ways to handle exceptions,


By wrapping the desired code in a try block followed by a catch block to catch the
exceptions. and
List the desired exceptions in the throws clause of the method and let the caller of the method
handle those exceptions.
64. Define How many objects are created in the following piece of code?

MyClass c1, c2, c3;


c1 = new MyClass ();
c3 = new MyClass ();
Answer: Only 2 objects are created, c1 and c3. The reference c2 is only declared and not
initialized.

65.What is UNICODE?

Unicode is used for internal representation of characters and strings and it uses 16 bits to
represent each other.

66. Can a constructor have different name than a Class name in Java?

Constructor in Java must have same name as the class name and if the name is different, it
doesn’t act as a constructor and compiler thinks of it as a normal method.

67. What will be the output of Round(3.7) and Ceil(3.7)?

Round(3.7) returns 4 and Ceil(3.7) returns 4.

68: Can we use goto in Java to go to a particular line?

In Java, there is not goto keyword and java doesn’t support this feature of going to a
particular labeled line.

69. Can a dead thread be started again?

In java, a thread which is in dead state can’t be started again. There is no way to restart a dead
thread.

70. Is the following class declaration correct?

public abstract final class testClass {

// Class methods and variables

}
The above class declaration is incorrect as an abstract class can’t be declared as Final.

71. Is JDK required on each machine to run a Java program?

JDK is development Kit of Java and is required for development only and to run a Java
program on a machine, JDK isn’t required. Only JRE is required.

72. Which object oriented Concept is achieved by using overloading and overriding?

Polymorphism

73. Is it possible to define a method in Java class but provide it’s implementation in the code
of another language like C?

Yes, we can do this by use of native methods. In case of native method based development,
we define public static methods in our Java class without its implementation and then
implementation is done in another language like C separately.

74. Define How destructors are defined in Java?

In Java, there are no destructors defined in the class as there is no need to do so. Java has its
own garbage collection mechanism which does the job automatically by destroying the
objects when no longer referenced.

75. Can a variable be local and static at the same time?

No a variable can’t be static as well as local at the same time. Defining a local variable as
static gives compilation error.

76. Can we have static methods in an Interface?

Static methods can’t be overridden in any class while any methods in an interface are by
default abstract and are supposed to be implemented in the classes being implementing the
interface. So it makes no sense to have static methods in an interface in Java.

77. In a class implementing an interface, can we change the value of any variable defined in
the interface?

No, we can’t change the value of any variable of an interface in the implementing class as all
variables defined in the interface are by default public, static and Final and final variables are
like constants which can’t be changed later.

78. Is it correct to say that due to garbage collection feature in Java, a java program never
goes out of memory?
Even though automatic garbage collection is provided by Java, it doesn’t ensure that a Java
program will not go out of memory as there is a possibility that creation of Java objects is
being done at a faster pace compared to garbage collection resulting in filling of all the
available memory resources.

So, garbage collection helps in reducing the chances of a program going out of memory but it
doesn’t ensure that.

79. Can we have any other return type than void for main method?

No, Java class main method can have only void return type for the program to get
successfully executed.

Nonetheless , if you absolutely must return a value to at the completion of main method , you
can use System.exit(int status)

80. I want to re-reach and use an object once it has been garbage collected. Define How it’s
possible?

Once an object has been destroyed by garbage collector, it no longer exists on the heap and it
can’t be accessed again. There is no way to reference it again.

81. In Java thread programming, which method is a must implementation for all threads?

Run() is a method of Runnable interface that must be implemented by all threads.

82. I want to control database connections in my program and want that only one thread
should be able to make database connection at a time. Define How can I implement this
logic?

This can be implemented by use of the concept of synchronization. Database related code can
be placed in a method which hs synchronized keyword so that only one thread can access it at
a time.

83. Can an Interface extend another Interface?

Yes an Interface can inherit another Interface, for that matter an Interface can extend more
than one Interface.

84. I want my class to be developed in such a way that no other class (even derived class) can
create its objects. Define How can I do so?
If we declare the constructor of a class as private, it will not be accessible by any other class
and hence, no other class will be able to instantiate it and formation of its object will be
limited to itself only.

85. Define How objects are stored in Java?

In java, each object when created gets a memory space from a heap. When an object is
destroyed by a garbage collector, the space allocated to it from the heap is re-allocated to the
heap and becomes available for any new objects.

86. Define How can we find the actual size of an object on the heap?

In java, there is no way to find out the exact size of an object on the heap.

87. Which of the following classes will have more memory allocated?

Class Three methods, four variables, no object

Class B: Five methods, three variables, no object

Memory isn’t allocated before creation of objects. Since for both classes, there are no objects
created so no memory is allocated on heap for any class.

88. What happens if an exception is not handled in a program?

If an exception is not handled in a program using try catch blocks, program gets aborted and
no statement executes after the statement which caused exception throwing.

89. I have multiple constructors defined in a class. Is it possible to call a constructor from
another constructor’s body?

If a class has multiple constructors, it’s possible to call one constructor from the body of
another one using this().

90. What’s meant by anonymous class?

An anonymous class is a class defined without any name in a single line of code using new
keyword.

For example, in below code we have defined an anonymous class in one line of code:
public java.util.Enumeration testMethod()

{
return new java.util.Enumeration()

@Override

public boolean hasMoreElements()

// TODO Auto-generated method stub

return false;

@Override

public Object nextElement()

// TODO Auto-generated method stub

return null;

91. Is there a way to increase the size of an array after its declaration?

Arrays are static and once we have specified its size, we can’t change it. If we want to use
such collections where we may require a change of size ( no of items), we should prefer
vector over array.

92. If an application has multiple classes in it, is it okay to have a main method in more than
one class?

If there is main method in more than one classes in a java application, it won’t cause any
issue as entry point for any application will be a specific class and code will start from the
main method of that particular class only.

93. I want to persist data of objects for later use. What’s the best approach to do so?

The best way to persist data for future use is to use the concept of serialization.
94. What is a Local class in Java?

In Java, if we define a new class inside a particular block, it’s called a local class. Such a
class has local scope and isn’t usable outside the block where its defined.

95. String and StringBuffer both represent String objects. Can we compare String and
StringBuffer in Java?

Although String and StringBuffer both represent String objects, we can’t compare them with
each other and if we try to compare them, we get an error.

96. Which API is provided by Java for operations on set of objects?

Java provides a Collection API which provides many useful methods which can be applied on
a set of objects. Some of the important classes provided by Collection API include ArrayList,
HashMap, TreeSet and TreeMap.

97. Can we cast any other type to Boolean Type with type casting?

No, we can neither cast any other early type to Boolean data type nor can cast Boolean data
type to any other early data type.

98. What are synchronized methods and synchronized statements?

Synchronized methods are methods that are used to control access to an object. A
synchronized statement can only be executed after a thread has acquired the lock for the
object or class referenced in the synchronized statement.

99. Define How does a try statement determine which catch clause should be used to handle
an exception?

When an exception is thrown within the body of a try statement, the catch clauses of the try
statement are examined in the order in which they appear. The first catch clause that is
capable of handling the exception is executed. The remaining catch clauses are ignored.

100. What will be the default values of all the elements of an array defined as an instance
variable?

If the array is an array of early types, then all the elements of the array will be initialized to
the default value corresponding to that early type.

Basic JAVA Questions with Answers pdf download


101. What is the difference between static and non-static variables?
A static variable is associated with the class as a whole rather than with specific instances of
a class. Non-static variables take on unique values with each object instance.

102. What is Serialization and deserialization?


Serialization is the process of writing the state of an object to a byte stream. Deserialization is
the process of restoring these objects.

103. What are use cases?


It is part of the analysis of a program and describes a situation that a program might
encounter and what behavior the program should exhibit in that circumstance.

104. Explain the use of sublass in a Java program?


Sub class inherits all the public and protected methods and the implementation. It also
inherits all the default modifier methods and their implementation.

105. How to add menushortcut to menu item?


If there is a button instance called b1, you may add menu short cut by calling
b1.setMnemonic(‘F’), so the user may be able to use Alt+F to click the button.

106. Can you write a Java class that could be used both as an applet as well as an application?
Yes, just add a main() method to the applet.

107. What is the difference between Swing and AWT components?


AWT components are heavy-weight, whereas Swing components are lightweight. Heavy
weight components depend on the local windowing toolkit. For example, java.awt.Button is a
heavy weight component, when it is running on the Java platform for Unix platform, it maps
to a real Motif button.

108. What’s the difference between constructors and other methods?


Constructors must have the same name as the class and can not return a value. They are only
called once while regular methods could be called many times.

109. Is there any limitation of using Inheritance?


Yes, since inheritance inherits everything from the super class and interface, it may make the
subclass too clustering and sometimes error-prone when dynamic overriding or dynamic
overloading in some situation.

109. When is the ArrayStoreException thrown?


When copying elements between different arrays, if the source or destination arguments are
not arrays or their types are not compatible, an ArrayStoreException will be thrown.

110. Can you call one constructor from another if a class has multiple constructors?
Yes, use this() syntax.
111. What’s the difference between the methods sleep() and wait()?
The code sleep(2000); puts thread aside for exactly two seconds. The code wait(2000), causes
a wait of up to two second. A thread could stop waiting earlier if it receives the notify() or
notifyAll() call. The method wait() is defined in the class Object and the method sleep() is
defined in the class Thread.

112. When ArithmeticException is thrown?


The ArithmeticException is thrown when integer is divided by zero or taking the remainder
of a number by zero. It is never thrown in floating-point operations.

113. What is a transient variable?


A transient variable is a variable that may not be serialized during Serialization and which is
initialized by its default value during de-serialization,

114. What is synchronization?


Synchronization is the capability to control the access of multiple threads to shared resources.
synchronized keyword in java provides locking which ensures mutual exclusive access of
shared resource and prevent data race.

115. What is the Collections API?


The Collections API is a set of classes and interfaces that support operations on collections of
objects.

116. Does garbage collection guarantee that a program will not run out of memory?
Garbage collection does not guarantee that a program will not run out of memory. It is
possible for programs to use up memory resources faster than they are garbage collected. It is
also possible for programs to create objects that are not subject to garbage collection.

117. The immediate super class of the Applet class?


Panel is the immediate super class. A panel provides space in which an application can attach
any other component, including other panels.

118. Which Java operator is right associative?


The = operator is right associative.

119. What is the difference between a break statement and a continue statement?
A break statement results in the termination of the statement to which it applies (switch, for,
do, or while). A continue statement is used to end the current loop iteration and return control
to the loop statement.

120. If a variable is declared as private, where may the variable be accessed?


A private variable may only be accessed within the class in which it is declared.

121. What is the purpose of the System class?


The purpose of the System class is to provide access to system resources.

122. List early Java types?


The eight early types are byte, char, short, int, long, float, double, and boolean.

123. What is the relationship between clipping and repainting under AWT?
When a window is repainted by the AWT painting thread, it sets the clipping regions to the
area of the window that requires repainting.

124. Which class is the immediate superclass of the Container class?


Component class is the immediate super class.

125. What class of exceptions are generated by the Java run-time system?
The Java runtime system generates RuntimeException and Error exceptions.

126. Under what conditions is an object’s finalize() method invoked by the garbage collector?
The garbage collector invokes an object’s finalize() method when it detects that the object has
become unreachable.

127. How can a dead thread be restarted?


A dead thread cannot be restarted.

128. Which arithmetic operations can result in the throwing of an ArithmeticException?


Integer / and % can result in the throwing of an ArithmeticException.

129. Variable of the boolean type is automatically initialized as?


The default value of the boolean type is false.

130. What are ClassLoaders?


A class loader is an object that is responsible for loading classes. The class ClassLoader is an
abstract class.

131. What is the difference between an Interface and an Abstract class?


An abstract class can have instance methods that implement a default behavior. An Interface
can only declare constants and instance methods, but cannot implement default behavior and
all methods are implicitly abstract. An interface has all public members and no
implementation.

132. What will happen if static modifier is removed from the signature of the main method?
Program throws “NoSuchMethodError” error at runtime .

133. Can try statements be nested?


Yes
134. What is the default value of an object reference declared as an instance variable?
Null, unless it is defined explicitly.

135. Can a top level class be private or protected?


No, a top level class can not be private or protected. It can have either “public” or no
modifier.

136. Why do we need wrapper classes?


We can pass them around as method parameters where a method expects an object. It also
provides utility methods.

137. What is the difference between error and an exception?


An error is an irrecoverable condition occurring at runtime. Such as OutOfMemory error.
Exceptions are conditions that occur because of bad input etc. e.g. FileNotFoundException
will be thrown if the specified file does not exist.

138. Is it necessary that each try block must be followed by a catch block?
It is not necessary that each try block must be followed by a catch block. It should be
followed by either a catch block or a finally block.

139. When a thread is created and started, what is its initial state?
A thread is in the ready state as initial state after it has been created and started.

140. What is the Locale class?


The Locale class is used to tailor program output to the conventions of a particular
geographic, political, or cultural region.

141. What are synchronized methods and synchronized statements?


Synchronized methods are methods that are used to control access to an object. A
synchronized statement can only be executed after a thread has acquired the lock for the
object or class referenced in the synchronized statement.

142. What is runtime polymorphism or dynamic method dispatch?


Runtime polymorphism or dynamic method dispatch is a process in which a call to an
overridden method is resolved at runtime rather than at compile-time. In this process, an
overridden method is called through the reference variable of a superclass.

143. What is Dynamic Binding(late binding)?


Binding refers to the linking of a procedure call to the code to be executed in response to the
call. Dynamic binding means that the code associated with a given procedure call is not
known until the time of the call at run-time.

144. Can constructor be inherited?


No, constructor cannot be inherited.
145. What are the advantages of ArrayList over arrays?
ArrayList can grow dynamically and provides more powerful insertion and search
mechanisms than arrays.

146. Why deletion in LinkedList is fast than ArrayList?


Deletion in linked list is fast because it involves only updating the next pointer in the node
before the deleted node and updating the previous pointer in the node after the deleted node.

147. How do you decide when to use ArrayList and LinkedList?


If you need to frequently add and remove elements from the middle of the list and only
access the list elements sequentially, then LinkedList should be used. If you need to support
random access, without inserting or removing elements from any place other than the end,
then ArrayList should be used.

148. What is a Values Collection View ?


It is a collection returned by the values() method of the Map Interface, It contains all the
objects present as values in the map.

149. What is dot operator?


The dot operator(.) is used to access the instance variables and methods of class objects.It is
also used to access classes and sub-packages from a package.

150. Where and how can you use a private constructor?


Private constructor is used if you do not want other classes to instantiate the object and to
prevent subclassing.T

151. What is type casting?


Type casting means treating a variable of one type as though it is another type.

152. What is the difference between the >> and >>> operators?
The >> operator carries the sign bit when shifting right. The >>> zero-fills bits that have been
shifted out.

153. Which method of the Component class is used to set the position and size of a
component?
setBounds() method is used for this purpose.

154. What is the range of the short type?


The range of the short type is -(2^15) to 2^15 – 1.

155. What is the immediate superclass of Menu?


MenuItem class
156. Does Java allow Default Arguments?
No, Java does not allow Default Arguments.

157. Which number is denoted by leading zero in java?


Octal Numbers are denoted by leading zero in java, example: 06

158. Which number is denoted by leading 0x or 0X in java?


Hexadecimal Numbers are denoted by leading 0x or 0X in java, example: 0XF

159. Break statement can be used as labels in Java?


Yes, an example can be break one;

160. Where import statement is used in a Java program?


Import statement is allowed at the beginning of the program file after package statement.

161. Explain suspend() method under Thread class>


It is used to pause or temporarily stop the execution of the thread.

162. Explain isAlive() method under Thread class?


It is used to find out whether a thread is still running or not.

163. What is currentThread()?


It is a public static method used to obtain a reference to the current thread.

164. Explain main thread under Thread class execution?


The main thread is created automatically and it begins to execute immediately when a
program starts. It ia thread from which all other child threads originate.

165. Life cycle of an applet includes which steps?


Life cycle involves the following steps:

Initialization
Starting
Stopping
Destroying
Painting
166. Why is the role of init() method under applets?
It initializes the applet and is the first method to be called.

167. Which method is called by Applet class to load an image?


getImage(URL object, filename) is used for this purpose.

168. Define code as an attribute of Applet?


It is used to specify the name of the applet class.
169. Define canvas?
It is a simple drawing surface which are used for painting images or to perform other
graphical operations.

170. Define Network Programming?


It refers to writing programs that execute across multiple devices (computers), in which the
devices are all connected to each other using a network.

171. What is a Socket?


Sockets provide the communication mechanism between two computers using TCP. A client
program creates a socket on its end of the communication and attempts to connect that socket
to a server.

172. Advantages of Java Sockets?


Sockets are flexible and sufficient. Efficient socket based programming can be easily
implemented for general communications. It cause low network traffic.

173. Disadvantages of Java Sockets?


Socket based communications allows only to send packets of raw data between applications.
Both the client-side and server-side have to provide mechanisms to make the data useful in
any way.

174. Which class is used by server applications to obtain a port and listen for client requests?
java.net.ServerSocket class is used by server applications to obtain a port and listen for client
requests

175. Which class represents the socket that both the client and server use to communicate
with each other?
java.net.Socket class represents the socket that both the client and server use to communicate
with each other.

176. Why Generics are used in Java?


Generics provide compile-time type safety that allows programmers to catch invalid types at
compile time. Java Generic methods and generic classes enable programmers to specify, with
a single method declaration, a set of related methods or, with a single class declaration, a set
of related types.

177. What environment variables do I need to set on my machine in order to be able to run
Java programs?
CLASSPATH and PATH are the two variables.

178. Is there any need to import java.lang package?


No, there is no need to import this package. It is by default loaded internally by the JVM.
179. What is Nested top-level class?
If a class is declared within a class and specify the static modifier, the compiler treats the
class just like any other top-level class. Nested top-level class is an Inner class.

180. What is Externalizable interface?


Externalizable is an interface which contains two methods readExternal and writeExternal.
These methods give you a control over the serialization mechanism.

181. If System.exit (0); is written at the end of the try block, will the finally block still
execute?
No in this case the finally block will not execute because when you say System.exit (0); the
control immediately goes out of the program, and thus finally never executes.

182. What is daemon thread?


Daemon thread is a low priority thread, which runs intermittently in the back ground doing
the garbage collection operation for the java runtime system.

183. Which method is used to create the daemon thread?


setDaemon method is used to create a daemon thread.

184. Which method must be implemented by all threads?


All tasks must implement the run() method

185. What is the GregorianCalendar class?


The GregorianCalendar provides support for traditional Western calendars

186. What is the SimpleTimeZone class?


The SimpleTimeZone class provides support for a Gregorian calendar .

187. What is the difference between the size and capacity of a Vector?
The size is the number of elements actually stored in the vector, while capacity is the
maximum number of elements it can store at a given instance of time.

188. Can a vector contain heterogenous objects?


Yes a Vector can contain heterogenous objects. Because a Vector stores everything in terms
of Object.

189. What is an enumeration?


An enumeration is an interface containing methods for accessing the underlying data
structure from which the enumeration is obtained. It allows sequential access to all the
elements stored in the collection.

190. What is difference between Path and Classpath?


Path and Classpath are operating system level environment variales. Path is defines where the
system can find the executables(.exe) files and classpath is used to specify the location
of .class files.

191. Can a class declared as private be accessed outside it’s package?


No, it’s not possible to accessed outside it’s package.

192. What are the restriction imposed on a static method or a static block of code?
A static method should not refer to instance variables without creating an instance and cannot
use “this” operator to refer the instance.

193. Can an Interface extend another Interface?


Yes an Interface can inherit another Interface, for that matter an Interface can extend more
than one Interface.

194. Which object oriented Concept is achieved by using overloading and overriding?
Polymorphism

195. What is an object’s lock and which object’s have locks?


An object’s lock is a mechanism that is used by multiple threads to obtain synchronized
access to the object. A thread may execute a synchronized method of an object only after it
has acquired the object’s lock.

196. What is Downcasting?


It is the casting from a general to a more specific type, i.e. casting down the hierarchy.

197. What are order of precedence and associativity and how are they used?
Order of precedence determines the order in which operators are evaluated in expressions.
Associatity determines whether an expression is evaluated left-to-right or right-to-left.

198. If a method is declared as protected, where may the method be accessed?


A protected method may only be accessed by classes or interfaces of the same package or by
subclasses of the class in which it is declared.

199. What is the difference between inner class and nested class?
When a class is defined within a scope of another class, then it becomes inner class. If the
access modifier of the inner class is static, then it becomes nested class.

200. What restrictions are placed on method overriding?


Overridden methods must have the same name, argument list, and return type. The overriding
method may not limit the access of the method it overrides.

201. What is constructor chaining and how is it achieved in Java?


A child object constructor always first needs to construct its parent. In Java it is done via an
implicit call to the no-args constructor as the first statement.

202. Can a double value be cast to a byte?


Yes, a double value can be cast to a byte.

203. How does a try statement determine which catch clause should be used to handle an
exception?
When an exception is thrown within the body of a try statement, the catch clauses of the try
statement are examined in the order in which they appear. The first catch clause that is
capable of handling the exception is executed. The remaining catch clauses are ignored.

204. Describe life cycle of thread?


A thread is a execution in a program. The life cycle of a thread include:Newborn state

Runnable state
Running state
Blocked state
Dead state

You might also like