JAVA Interview Questions
- What is Java?
A highlevel programming language developed by Sun Microsystems. Java was originally called OAK, and was designed for handheld devices and settop boxes. Oak was unsuccessful so in 1995 Sun changed the name to Java and modified the language to take advantage of the burgeoning World Wide Web.
- what are the main features of java?
The main features of java are Compiled and Interpreted Object oriented Robust and secure Type safe High Performance.
- What are pass by reference and passby value?
Pass By Reference means the passing the address itself rather than passing the value. Passby Value means passing a copy of the value to be passed.
- What is the Java API?
The Java API is a large collection of readymade software components that provide many useful capabilities, such as graphical user interface (GUI) widgets.
- What is the Java Virtual Machine (JVM)?
The Java Virtual Machine is software that can be ported onto various hardwarebased platforms.
- What is variables and then types?
Variables is an identifier that denotes a storage location used to store a data values.unlike constants that remain unchanged during the execution of a program, a variable may takes different values at different times during the execution of the program. Instance variables Class variables Local variable Parameters
- 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 subpackages from a package.
Examples : Person1.age > Reference to the variable age
- Define strings?
Strings represent a sequence of characters.The easiest way to represent a sequence of characters in java is by using a character array.
- What is serialization?
Serialization is the process of converting a objects into a stream of bytes.
- What are different types of access modifiers?
Access specifiers are keywords that determine the type of access to the member a class. Public Protected Private Default
- What is an abstract class? Abstract class is a class which contain one or more abstract methods, which has to be implemented by sub classes. An abstract class can contain no abstract methods also i.e. abstract class may contain concrete methods.
- What are class variables Class variables are global to a class and belong to the entire set of objects that class creates. Only one memory location is created for each variable.
What is the Collection interface?
The Collection interface provides support for the implementation of a mathematical bag an unordered collection of objects that may contain duplicates.
- What must a class do to implement an interface?
The class must provide all of the methods in the interface and identify the interface in its implements clause.
- What is the Collections API?
The Collections API is a set of classes and interfaces that support operations on collections of objects.
- What is an array?
Array is a group of related data items that share a common name.For instance, we can define an array name salary to represent a set of salaries of a group of employees. Examples : salary
- What is a list iterator?
The List and Set collections provide iterators, which are objects that allow going over all the elements of a collection in sequence. The java.util.Iterator interface provides for oneway traversal and java.util.ListIterator is an iterator for lists that allows the programmer to traverse the list in either direction (i.e. forward and or backward) and modify the list during iteration.
18 What is the main difference between a String and a StringBuffer class?
String is immutable : you can’t modify a string object but can replace it by creating a new instance. Creating a new instance is rather expensive. StringBuffer is mutable : use StringBuffer or StringBuilder when you want to modify the contents. StringBuilder was added in Java 5 and it is identical in all respects to StringBuffer except that it is not synchronized,which makes it slightly faster at the cost of not being threadsafe.
- When to use serialization? A common use of serialization is to use it to send an object over the network or if the state of an object needs to be persisted to a flat file or a database.
What is the main difference between shallow cloning and deep cloning of objects? Java supports shallow cloning of objects by default when a class implements thejava.lang.Cloneable interface. Deep cloning through serialization is faster to develop and easier to maintain but carries a performance overhead.
What are wrapper classes?
primitive data types may be converted into object types by using the wrapper classes contained in the java.lang package. Exampes : int, float, long, char, double
- What is the difference between an instance variable and a static variable?
Class variables are called static variables. There is only one occurrence of a class variable per JVM per class loader.When a class is loaded the class variables are initialized. Instance variables are nonstatic and there is one occurrence of an instance variable in each class instance.Also known as a member variable or a field.
- 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.The instantiation is done by a public static method (i.e. a static factory method) within the same class.
- What is type casting?
Type casting means treating a variable of one type as though it is another type. Examples : int m = 5; byte n =i;
- What is a user defined exception?
User defined exceptions may be implemented by defining a new exception class by extending the Exception class.
- What is an instanceof operator?
Instanceof is an object reference operator and returns true if the object on the lefthand side is an instance of the glass given to the right hand side.This operator allows to determine whether the object belongs to a particular class or not.
- 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.
28 What is the difference between an interface and an abstract class?
An abstract class may contain code in method bodies, which is not allowed in an interface. With abstract classes, you have to inherit your class from it and Java does not allow multiple inheritance. On the other hand, you can implement multiple interfaces in your class.
- what is a package?
A package is a namespace that organizes a set of related classes and interfaces.The classes contained in the packages of other programs can be easily reused.Packages, classes can be unique compared with classes in other packages.That is, two classes in two different packages can have the same name.
- Why do threads block on I/O?
Threads block on i/o (that is enters the waiting state) so that other threads may execute while the i/o Operation is performed.
- What is the List interface?
The List interface provides support for ordered collections of objects.
- What is the Vector class?
The Vector class provides the capability to implement a growable array of objects.
33 What is the base class of all classes? java.lang.Object
34 What is the importance of static variable?
static variables are class level variables where all objects of the class refer to the same variable. If one object changes the value then the change gets reflected in all the objects.
- What is the difference between a while statement and a do while statement? A while statement checks at the beginning of a loop to see whether the next loop iteration should occur. A do while statement checks at the end of a loop to see whether the next iteration of a loop should occur. The do whilestatement will always execute the body of a loop at least once.
Describe life cycle of thread?
A thread is similiar to a program that has a single flow of control.A thread is a execution in a program. The life cycle of threads are: Newborn state Runnable state Running state Blocked state(Wating State) Dead state
- What is an Applets?
Applets are small java programs that are primarily used in Internet computing. They can be transported over the internet from one computer to another and run using the Applet Viewer or any web browser that supports java.
38 What are wrapped classes?
Wrapped classes are classes that allow primitive types to be accessed as objects.
Examples : Integer, Float, String, Character, Boolean, Long, Double
- What is the difference between an if statement and a switch statement?
The if statement is used to select among two alternatives. It uses a boolean expression to decide which alternative should be executed. The switch statement is used to select among multiple alternatives. It uses an int expression to determine which alternative should be executed.
- What modifiers are allowed for methods in an Interface?
Only public and abstract modifiers are allowed for methods in interfaces.
- What is the difference between method overriding and overloading?
Overriding is a method with the same name and arguments as in a parent, whereas overloading is the same method name but different arguments.
- What do you mean by polymorphism?
Polymorphism is the ability of an object to take on many forms. The most common use of polymorphism in OOP occurs when a parent class reference is used to refer to a child class object.. Simple means: ISA
43 What is the difference between an abstract class and an interface?
Abstract class Interface Have executable methods and abstract methods.Can only subclass one abstract class Interface Have no implementation code. All methods are abstract.A class can implement any number of interfaces.
- 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.
- What is the difference between a break statement and a continue statement?
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.
- When is a method said to be overloaded and when is a method said to be overridden?
Overloading deals with multiple methods in the same class with the same name but different method signatures.
- How is final different from finally and finalize()?
Final constant declaration. The finally block always executes when the try block exits, except System.exit ( 0 ) call. finalize ( ) is a method of Object class which will be executed by the JVM just before garbage collection gobjecttogive a final chance for resource releasing activity.
- What is Byte Code?
All Java programs are compiled into class files that contain bytecodes. These byte codes can be run in any platform and hence java is said to be platform independent.
- What is the difference between error and an exception?
Exception means When a method encounters an abnormal condition (an exception condition) that it can’t handle itself, it may throw an exception.
- What if the main method is declared as private ?
When a method is declared as private, the program compiles properly but it will give run time error Main method not ” public “.