Here is a list of Java Interview Questions..
- What is the difference between procedural and object-oriented programs?-
a)
In procedural program, programming logic follows certain procedures and the
instructions are executed one after another. In OOP program, unit of program is
object, which is nothing but combination of data and code. b) In procedural
program, data is exposed to the whole program whereas in OOPs program, it is
accessible with in the object and which in turn assures the security of the
code.
- What is Encapsulation
Encapsulation is the mechanism that binds
together code and data it manipulates and keeps both safe from outside
interference and misuse.
- What is Inheritence?
Inheritance is the process by which one
object acquires the properties of another object.
- What is Polymorphism?
Polymorphism is the feature that allows one
interface to be used for general class actions.
- What is the difference between Assignment and Initialization?-
Assignment can be done as many times as
desired whereas initialization can be done only once.
- What is OOPs?-
Object oriented programming organizes a
program around its data, i. e. , objects and a set of well defined interfaces
to that data. An object-oriented program can be characterized as data
controlling access to code.
- What are Class, Constructor and Primitive data types?
Class is a template for multiple objects
with similar features and it is a blue print for objects. It defines a type of
object according to the data the object can hold and the operations the object
can perform. Constructor is a special kind of method that determines how an
object is initialized when created. Primitive data types are 8 types and they
are: byte, short, int, long, float, double, boolean, char.
- What is an Object and how do you allocate memory to it?
Object is an instance of a class and it is a
software unit that combines a structured set of data with a set of operations
for inspecting and manipulating that data. When an object is created using new
operator, memory is allocated to it.
- What is the difference between constructor and method?
Constructor will be automatically invoked when
an object is created whereas method has to be called explicitly.
- What are methods and how are they defined?
Methods are functions that operate on
instances of classes in which they are defined. Objects can communicate with
each other using methods and can call methods in other classes. Method
definition has four parts. They are name of the method, type of object or
primitive type the method returns, a list of parameters and the body of the method.
A method’s signature is a combination of the first three parts mentioned above.
- 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.
- What is casting?
Casting is used to convert the value of one
type to another.
- How many ways can an argument be passed to a subroutine and explain them?
An
argument can be passed in two ways. They are passing by value and passing by
reference. Passing by value: This method copies the value of an argument into
the formal parameter of the subroutine. Passing by reference: In this method, a
reference to an argument (not the value of the argument) is passed to the
parameter.
- What is the difference between an argument and a parameter?
While defining method, variables passed
in the method are called parameters. While using those methods, values passed
to those variables are called arguments.
- 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.
- What is final, finalize() and finally?
final : final keyword can be used for class,
method and variables. A final class cannot be subclassed and it prevents other
programmers from subclassing a secure class to invoke insecure methods. A final
method can’t be overridden. A final variable can’t change from its initialized
value. finalize() : finalize() method is used just before an object is
destroyed and can be called just prior to garbage collection. finally : finally,
a key word used in exception handling, creates a block of code that will be
executed after a try/catch block has completed and before the code following
the try/catch block. The finally block will execute whether or not an exception
is thrown. For example, if a method opens a file upon exit, then you will not
want the code that closes the file to be bypassed by the exception-handling
mechanism. This finally keyword is designed to address this contingency.
- What is UNICODE?
Unicode is used for internal representation
of characters and strings and it uses 16 bits to represent each other.
- What is Garbage Collection and how to call it explicitly?
When an object is no longer referred to by any
variable, java automatically reclaims memory used by that object. This is known
as garbage collection. System. gc() method may be used to call it explicitly.
- What is finalize() method?
finalize () method is used just before an
object is destroyed and can be called just prior to garbage collection.
- What are Transient and Volatile Modifiers?
Transient: The transient modifier applies to
variables only and it is not stored as part of its object’s Persistent state.
Transient variables are not serialized. Volatile: Volatile modifier applies to
variables only and it tells the compiler that the variable modified by volatile
can be changed unexpectedly by other parts of the program.
- 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.
- What is difference between overloading and overriding?
a)
In overloading, there is a relationship between methods available in the same
class whereas in overriding, there is relationship between a superclass method
and subclass method.
b)
Overloading does not block inheritance from the superclass whereas overriding
blocks inheritance from the superclass.
c)
In overloading, separate methods share the same name whereas in overriding,
subclass method replaces the superclass.
d) Overloading must have different method signatures whereas overriding must have same signature.
d) Overloading must have different method signatures whereas overriding must have same signature.
- 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.
- 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.
- 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.
- What modifiers may be used with top-level class?
public, abstract and final can be used for
top-level class.
- What are inner class and anonymous class?
Inner class : classes defined in other
classes, including those defined in methods are called inner classes. An inner
class can have any accessibility including private. Anonymous class : Anonymous
class is a class defined inside a method without a name and is instantiated and
declared in the same place and cannot have explicit constructors.
- What is a package?
A
package is a collection of classes and interfaces that provides a high-level
layer of access protection and name space management.
- What is a reflection package?
java. lang. reflect package has the ability to
analyze itself in runtime.
- What is interface and its use?
Interface is similar to a class which may
contain method’s signature only but not bodies and it is a formal set of method
and constant declarations that must be defined by the class that implements it.
Interfaces are useful for: a)Declaring methods that one or more classes are
expected to implement b)Capturing similarities between unrelated classes
without forcing a class relationship. c)Determining an object’s programming
interface without revealing the actual body of the class.
0 comments:
Post a Comment