Java Interview Questions
Java Interview Questions
6. What is javac ?
It produces the java byte code from *.java file.
It is the intermediate representation of your source code that contains instructions.
super() Constructer :
- It is used to call constructor of parent class.
- Must be the first statement in the body of constructor.
- Using this we can access private variables in the super class.
What are Access Specifiers available in Java?
Java offers four access specifiers, described below :
Public : Public classes, methods, and fields can be accessed by every class.
Protected : Protected methods and fields can only be accessed within the same class to which the
methods and fields belong.
Default (no specifier) : When we do not set access to specific level, then such a class, method, or field
will be accessible from inside the same package to which the class, method, or field belongs.
Private : Private methods and fields can only be accessed within the same class to which the methods
and fields belong. Private methods and fields are not inherited by subclasses.
What is Constructor?
- A constructor is used to initialize a newly created object.
- It is called just after the memory is allocated for the object.
- It can be used to initialize the objects.
- It is not mandatory to write a constructor for the class.
- Name of constructor is same as the class name.
- They cannot be inherited.
- A constructor is invoked whenever an object of its associated class is created.
What are the List interface and its main implementation?
The List helps in collections of objects. Lists may contain duplicate elements. The main implementations
of the List interface are as follows :
ArrayList : Resizable-array implementation of the List interface.
Vector : Synchronized resizable-array implementation of the List.
LinkedList : Doubly-linked list implementation of the List interface. Better performance than the
ArrayList implementation when elements are inserted or deleted timely.
Explain the user defined Exceptions.
User Defined Exceptions are exceptions defined by the user for specific purposed. This allows custom
exceptions to be generated and caught in the same way as normal exceptions. While defining a User
Defined Exception, we need to take care of the following aspects :
- It should be extend from Exception class.
- Use toString() method to display information about the exception.
Describe life cycle of thread.
Threads follow the single flow of control. A thread is execution in a program. The life cycles of threads
are listed below :
Newborn state : After the creations of Thread instance the thread is in this state but before the start()
method invocation. Thread is considered not alive in this phase.
Runnable state : A thread starts its life from Runnable state. After the invoking of start() method thread
enters Runnable state.
Running state : A thread first enters Runnable state.
Blocked state : A thread can enter in this state because of waiting the resources that are hold by another
thread.
Dead state : A thread can be considered dead when its run() method completes. If any thread comes on
this state that means it cannot ever run again.
What is an Applets?
Applets :
- These are small java programs.
- They can send from one computer to another computer over the internet using the Applet Viewer that
supports java.
- Applets can run in a Web browser as it is a java program. It can be a fully functional Java application
because it has the entire Java API at its disposal.
- Applets follow the security rules given by the Web browser.
- Applet security is also known as sandbox security.
What is the Set interface?
- A set interface is a collection of element which cannot be duplicated.
- The set interface contains methods inherited from the collection.
- It provides methods to access the elements of a finite mathematical set.
- Two Set objects are equal if they contain the same elements.
- It models the mathematical set abstraction.
What is a HashSet and TreeSet?
HashSet :
- The HashSet is an unsorted, unordered Set.
- It is Collection set that restricts duplicate elements and also repositioning of elements.
- It implements the Set interface and extends AbstractSet.
- It uses hash code of the object being inserted.
TreeSet :
- The TreeSet is a Set implemented when we want elements in a sorted order.
- Sorting of element is done according to the natural order of elements or by the help of comparator
provided at creation time.
How do you decide when to use HashMap and when to use TreeMap and what is difference between
these two?
- HashMap is used when we want to perform insertion, deletion, and locate elements in a Map.
- TreeMap is used when we want to traverse the elements in a sorted order. Depending upon the size of
collection, adding elements to HashMap is easy. For sorted elements traversal we can convert the
HashMap into TreeMap.
HashMap :
- Lets us to have null values and also one null key
- Iterator in the HashMap is Fail-Safe.
- It is Unsynchronized.
HashTable :
- It does not allow null value as key and value.
- It is not synchronized.
What is the Comparable interface?
- The Comparable interface is used to sort collections and arrays of objects using the collections.sort()
and java.utils.
- The objects of the class implementing the comparable interface can be ordered.
- All classes implementing the Comparable interface must implement the compareTo() method that has
the return type as an integer.
- The signature of the compareTo() method is as follows :
int i = object1.compareTo(object2)