Questions
: 1 What is Object Oriented
Programming ?
Answers
: 1
It is a problem solving technique to
develop software systems. It is a technique to think real world in terms of
objects. Object maps the software model to real world concept. These objects
have responsibilities and provide services to application or other objects.
Questions : 2 What
is a Class ?
Answers : 2
A class describes all the attributes
of objects, as well as the methods that implement the behavior of member
objects. It is a comprehensive data type which represents a blue print of
objects. It’s a template of object.
Questions : 3 What
is an Object ?
Answers : 3
It is a basic unit of a system. An
object is an entity that has attributes, behavior, and identity. Objects are
members of a class. Attributes and behavior of an object are defined by the
class definition.
Questions : 4 What
is the relation between Classes and Objects?
Answers : 4
Answers : 4
They look very much same but are not
same. Class is a definition, while object is instance of the class created.
Class is a blue print while objects are actual objects existing in real world.
Example we have class CAR which has attributes and methods like Speed, Brakes,
Type of Car etc.Class CAR is just a prototype, now we can create real time
objects which can be used to provide functionality. Example we can create a
Maruti car object with 100 km speed and urgent brakes.
Questions : 5 What
are different properties provided by Object-oriented systems ? Answers : 5
Following are characteristics of
Object Oriented System’s:-
Abstraction
It allows complex real world to be represented in simplified manner. Example color is abstracted to RGB.By just making the combination of these three colors we can achieve any color in world. It’s a model of real world or concept.
Abstraction
It allows complex real world to be represented in simplified manner. Example color is abstracted to RGB.By just making the combination of these three colors we can achieve any color in world. It’s a model of real world or concept.
Encapsulation
The process of hiding all the internal details of an object from the outside world.
Communication
Using messages when application wants to achieve certain task it can only be done using combination of objects. A single object can not do the entire task. Example if we want to make order processing form. We will use Customer object, Order object, Product object and Payment object to achieve this functionality. In short these objects should communicate with each other. This is achieved when objects send messages to each other.
Object lifetime
All objects have life time. Objects are created, initialized, necessary functionalities are done and later the object is destroyed. Every object have there own state and identity, which differ from instance to instance.
Questions : 6 What
is an Abstract class ?
Answers : 6
Abstract class defines an abstract
concept which can not be instantiated and comparing o interface it can have
some implementation while interfaces can not. Below are some
points for abstract class:-
=>We can not create object of abstract class it can only be inherited in a below class.
=> Normally abstract classes have base implementation and then child classes derive from the abstract class to make the class concrete.
points for abstract class:-
=>We can not create object of abstract class it can only be inherited in a below class.
=> Normally abstract classes have base implementation and then child classes derive from the abstract class to make the class concrete.
Questions : 7 What
are Abstract methods?
Answers : 7
Abstract class can contain abstract
methods. Abstract methods do not have implementation. Abstract methods should
be implemented in the subclasses which inherit them. So if an abstract class
has an abstract method class inheriting the abstract class should implement the
method or else java compiler will through an error. In this way, an abstract
class can define a complete programming interface thereby providing its
subclasses with the method declarations for all of the methods necessary to
implement that programming interface. Abstract methods are defined using
"abstract" keyword. Below is a sample code snippet.
abstract class pcdsGraphics
{
abstract void draw();
}
Any class inheriting from "pcdsGraphics" class should implement the "draw" method or else the java compiler will throw an error. so if we do not implement a abstract method the program will not compile.
abstract class pcdsGraphics
{
abstract void draw();
}
Any class inheriting from "pcdsGraphics" class should implement the "draw" method or else the java compiler will throw an error. so if we do not implement a abstract method the program will not compile.
Questions : 8 What
is the difference between Abstract classes and Interfaces ? Answers : 8
Difference between Abstract class
and Interface is as follows:-
Abstract class can only be inherited while interfaces can not be it has to be implemented.
Interface cannot implement any methods, whereas an abstract class can have implementation.
Class can implement many interfaces but can have only one super class.
Interface is not part of the class hierarchy while Abstract class comes in through inheritance.
Unrelated classes can implement the same interface.
Abstract class can only be inherited while interfaces can not be it has to be implemented.
Interface cannot implement any methods, whereas an abstract class can have implementation.
Class can implement many interfaces but can have only one super class.
Interface is not part of the class hierarchy while Abstract class comes in through inheritance.
Unrelated classes can implement the same interface.
Questions : 9 What
is difference between Static and Non-Static fields of a class ? Answers : 9
Non-Static values are also called as
instance variables. Each object of the class has its own copy of Non-Static
instance variables. So when a new object is created of the same class it will
have completely its own copy of instance variables. While Static values have
only one copy of instance variables and will be shared among all the objects of
the class.
Questions : 10 What
are inner classes and what is the practical implementation of inner classes?
Answers : 10
Inner classes are nested inside
other class. They have access to outer class fields and methods even if the
fields of outer class are defined as private.
public class Pcds
{
class pcdsEmp
{
// inner class defines the required structure
String first;
String last;
}
// array of name objects
clsName personArray[] = {new clsName(), new clsName(), new clsName()};
}
Normally inner classes are used for data structures like one shown above or some kind of helper classes.
public class Pcds
{
class pcdsEmp
{
// inner class defines the required structure
String first;
String last;
}
// array of name objects
clsName personArray[] = {new clsName(), new clsName(), new clsName()};
}
Normally inner classes are used for data structures like one shown above or some kind of helper classes.
Questions : 11 What
is a constructor in class?
Answers : 11
Constructor has the same name as the
class in which it resides and looks from syntax point of view it looks similiar
to a method. Constructor is automatically called immediately after the object
is created, before the new operator completes. Constructors have no return
type, not even void. This is because the implicit return type of a class'
constructor is the class type itself. It is the constructor's job to initialize
the internal state of an object so that the code creating an instance will have
a fully initialized, usable object immediately.
Questions : 12 Can
constructors be parameterized?
Answers : 12
Yes we can have parameterized
constructor which can also be termed as constructor overloading. Below is a
code snippet which shows two constructors for pcdsMaths class one with
parameter and one with out.
class pcdsMaths
{
double PI;
// This is the constructor for the maths constant class.
pcdsMaths()
{PI = 3.14;}
pcdsMaths(int pi)
{
PI = pi;
} }
class pcdsMaths
{
double PI;
// This is the constructor for the maths constant class.
pcdsMaths()
{PI = 3.14;}
pcdsMaths(int pi)
{
PI = pi;
} }
Questions : 13 What
is the use if instanceof keyword? and How do refer to a current instance of
object?
Answers : 13
"instanceof" keyword is
used to check what is the type of object.
we can refer the current instance of object using "this" keyword. For instance if we have class which has color property we can refer the current object instance inside any of the method using "this.color".
we can refer the current instance of object using "this" keyword. For instance if we have class which has color property we can refer the current object instance inside any of the method using "this.color".
Questions : 14 what
is Bootstrap, Extension and System Class loader? or Can you explain primordial
class loader?
Answers : 14
There three types of class loaders:-
BootStrap Class loader also called as primordial class loader.
Extension Class loader.
System Class loader. Let’s now try to get the fundamentals of these class loaders.
Bootstrap Class loader
Bootstrap class loader loads those classes those which are essential for JVM to function properly. Bootstrap class loader is responsible for loading all core java classes for instance java.lang.*, java.io.* etc. Bootstrap class loader finds these necessary classes from “jdk/ jre/lib/rt.jar”. Bootstrap class loader can not be instantiated from JAVA code and is implemented natively inside JVM.
BootStrap Class loader also called as primordial class loader.
Extension Class loader.
System Class loader. Let’s now try to get the fundamentals of these class loaders.
Bootstrap Class loader
Bootstrap class loader loads those classes those which are essential for JVM to function properly. Bootstrap class loader is responsible for loading all core java classes for instance java.lang.*, java.io.* etc. Bootstrap class loader finds these necessary classes from “jdk/ jre/lib/rt.jar”. Bootstrap class loader can not be instantiated from JAVA code and is implemented natively inside JVM.
Extension Class loader
The extension class loader also termed as the standard extensions class loader is a child of the bootstrap class loader. Its primary responsibility is to load classes from the extension directories, normally located the “jre/lib/ext” directory. This provides the ability to simply drop in new extensions, such as various security extensions, without requiring modification to the user's class path.
System Class loader
The system class loader also termed application class loader is the class loader responsible for loading code from the path specified by the CLASSPATH environment variable. It is also used to load an application’s entry point class that is the "static void main ()" method in a class.
Questions : 15 what’s
the main difference between ArrayList / HashMap and Vector / Hashtable?
Answers
: 15
Vector / HashTable are synchronized
which means they are thread safe. Cost of thread safe is performance
degradation. So if you are sure that you are not dealing with huge number of
threads then you should use ArrayList / HashMap.But yes you can still
synchronize List and Map’s using Collections provided methods :-
List OurList = Collections.synchronizedList (OurList);
Map OurMap = Collections.synchronizedMap (OurMap);
synchronize List and Map’s using Collections provided methods :-
List OurList = Collections.synchronizedList (OurList);
Map OurMap = Collections.synchronizedMap (OurMap);
Questions : 16 What
are access modifiers?
Answers : 16
Access modifiers decide whether a
method or a data variable can be accessed by another method in another class or
subclass.
four types of access modifiers:
four types of access modifiers:
Public: - Can be accessed by any other class anywhere.
Protected: - Can be accessed by classes inside the package or by subclasses ( that means classes who inherit from this class).
Private - Can be accessed only within the class. Even methods in subclasses in the same package do not have access.
Default - (Its private access by default) accessible to classes in the same package but not by classes in other packages, even if these are subclasses.
Questions : 17 Define
exceptions ?
Answers : 17
An exception is an abnormal
condition that arises in a code sequence at run time. Basically there are four
important keywords which form the main pillars of exception handling: try,
catch, throw and finally. Code which you want to monitor for exception is
contained in the try block. If any exception occurs in the try block its sent
to the catch block which can handle this error in a more rational manner. To
throw an exception manually you need to call use the throw keyword. If you want
to put any clean up code use the finally block. The finally block is executed
irrespective if there is an error or not.
Questions : 18 What
is serialization?How do we implement serialization actually? Answers : 18
Serialization is a process by which
an object instance is converted in to stream of bytes. There are many useful
stuff you can do when the object instance is converted in to stream of bytes
for instance you can save the object in hard disk or send it across the
network.
In order to implement serialization
we need to use two classes from java.io package ObjectOutputStream and
ObjectInputStream. ObjectOutputStream has a method called writeObject, while
ObjectInputStream has a method called readObject. Using writeobject we can
write and readObject can be used to read the object from the stream. Below are
two code snippet which used the FileInputStream and FileOutputstream to read
and write from harddisk.
Hey there! This is kind of off topic but I need some help
ReplyDeletefrom an established blog. Is it very hard to set up your own
blog? I'm not very techincal but I can figure things out pretty fast. I'm thinking about making
my own but I'm not sure where to start. Do you have any tips or suggestions? Cheers
Look at my web site natural cellulite treatment