Programming related Java questions

What is a class?

A class is a blueprint, or prototype, that defines the variables and the methods common to all objects of a certain kind.


What is a object?

An object is a software bundle of variables and related methods.An instance of a class depicting the state and behavior at that particular time in real world.

What is a method?
Encapsulation of a functionality which can be called to perform specific tasks.

What is encapsulation? Explain with an example.

Encapsulation is the term given to the process of hiding the implementation details of the object. Once an object is encapsulated, its implementation details are not immediately accessible any more. Instead they are packaged and are only indirectly accessible via the interface of the object


What is inheritance? Explain with an example.

Inheritance in object oriented programming means that a class of objects can inherit properties and methods from another class of objects.


What is polymorphism? Explain with an example.

In object-oriented programming, polymorphism refers to a programming language’s ability to process objects differently depending on their data type or class. More specifically, it is the ability to redefine methods for derived classes. For example, given a base class shape, polymorphism enables the programmer to define different area methods for any number of derived classes, such as circles, rectangles and triangles. No matter what shape an object is, applying the area method to it will return the correct results. Polymorphism is considered to be a requirement of any true object-oriented programming language

Is multiple inheritance allowed in Java?

No, multiple inheritance is not allowed in Java.


What is interpreter and compiler?

Java interpreter converts the high level language code into a intermediate form in Java called as bytecode, and then executes it, where as a compiler converts the high level language code to machine language making it very hardware specific

What is JVM?

The Java interpreter along with the runtime environment required to run the Java application in called as Java virtual machine(JVM)


What are the different types of modifiers?

There are access modifiers and there are other identifiers. Access modifiers are public, protected and private. Other are final and static.


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.


What is a wrapper class?

They are classes that wrap a primitive data type so it can be used as a object


What is a static variable and static method? What’s the difference between two?

The modifier static can be used with a variable and method. When declared as static variable, there is only one variable no matter how instances are created, this variable is initialized when the class is loaded. Static method do not need a class to be instantiated to be called, also a non static method cannot be called from static method.


What is garbage collection?

Garbage Collection is a thread that runs to reclaim the memory by destroying the objects that cannot be referenced anymore.

What is abstract class?

Abstract class is a class that needs to be extended and its methods implemented, aclass has to be declared abstract if it has one or more abstract methods.


What is meant by final class, methods and variables?

This modifier can be applied to class method and variable. When declared as final class the class cannot be extended. When declared as final variable, its value cannot be changed if is primitive value, if it is a reference to the object it will always refer to the same object, internal attributes of the object can be changed.


What is interface?

Interface is a contact that can be implemented by a class, it has method that need implementation.


What is method overloading?

Overloading is declaring multiple method with the same name, but with different argument list.


What is method overriding?

Overriding has same method name, identical arguments used in subclass.


What is singleton class?

Singleton class means that any given time only one instance of the class is present, in one JVM.


What is the difference between an array and a vector?

Number of elements in an array are fixed at the construction time, whereas the number of elements in vector can grow dynamically.


What is a constructor?

In Java, the class designer can guarantee initialization of every object by providing a special method called a constructor. If a class has a constructor, Java automatically calls that constructor when an object is created, before users can even get their hands on it. So initialization is guaranteed.


What is casting?

Conversion of one type of data to another when appropriate. Casting makes explicitly converting of data.


What is the difference between final, finally and finalize?

The modifier final is used on class variable and methods to specify certain behaviour explained above. And finally is used as one of the loop in the try catch blocks, It is used to hold code that needs to be executed whether or not the exception occurs in the try catch block. Java provides a method called finalize( ) that can be defined in the class. When the garbage collector is ready to release the storage ed for your object, it will first call finalize( ), and only on the next garbage-collection pass will it reclaim the objects memory. So finalize( ), gives you the ability to perform some important cleanup at the time of garbage collection.


What is are packages?

A package is a collection of related classes and interfaces providing access protection and namespace management.


What is a super class and how can you call a super class?

When a class is extended that is derived from another class there is a relationship is created, the parent class is referred to as the super class by the derived class that is the child. The derived class can make a call to the super class using the keyword super. If used in the constructor of the derived class it has to be the first statement.


What is meant by a Thread?

Thread is defined as an instantiated parallel process of a given program.


What is multi-threading?

Multi-threading as the name suggest is the scenario where more than one threads are running.


What are two ways of creating a thread? Which is the best way and why?

Two ways of creating threads are, one can extend from the Java.lang.Thread and can implement the rum method or the run method of a different class can be called which implements the interface Runnable, and the then implement the run() method. The latter one is mostly used as first due to Java rule of only one class inheritance, with implementing the Runnable interface that problem is sorted out.


What is deadlock?

Deadlock is a situation when two threads are waiting on each other to release a resource. Each thread waiting for a resource which is held by the other waiting thread. In Java, this resource is usually the object lock obtained by the synchronized keyword.


What are the three types of priority?

MAX_PRIORITY which is 10, MIN_PRIORITY which is 1, NORM_PRIORITY which is 5.


What is the use of synchronizations?

Every object has a lock, when a synchronized keyword is used on a piece of code the, lock must be obtained by the thread first to execute that code, other threads will not be allowed to execute that piece of code till this lock is released.

courtesy:http://www.crackthecampus.com

2 comments:

  1. Very good wrap up of most Java interview questions.

    Thanks!
    Ahmed

    ReplyDelete
  2. 2 quick fixes:

    1. multiple inheritance is sorta allowed in java, but only static class members and methods can be inherited (via multiple interfaces).

    2. you've got the descriptions of the interpreter and compiler backwards. The java compiler (javac) converts java code into BYTECODE (class files), which are then run with the interpreter and converted on-the-fly (JIT) into machine code.

    ReplyDelete