EX javaViVA
EX javaViVA
It is the tool necessary to compile, JRE refers to a runtime It is an abstract machine. It is a specification
document and package Java environment in which Java that provides a run-time environment in
programs. bytecode can be executed. which Java bytecode can be executed.
public: Public is an access modifier, which is used to specify who can access this method. Public means that this Method will
be accessible by any Class.
static: It is a keyword in java which identifies it is class-based. main() is made static in Java so that it can be accessed without
creating the instance of a Class. In case, main is not made static then the compiler will throw an error as main() is called by
the JVM before any objects are made and only static methods can be directly invoked via the class.
void: It is the return type of the method. Void defines the method which will not return any value.
main: It is the name of the method which is searched by JVM as a starting point for an application with a particular signature
only. It is the method where the main execution occurs.
String args[]: It is the parameter passed to the main method.
Java is not 100% Object-oriented because it makes use of eight primitive data types such as boolean, byte, char, int, float, double, long,
short which are not objects.
1. Default Constructor: In Java, a default constructor is the one which does not take any inputs. In other words, default
constructors are the no argument constructors which will be created by default in case you no other constructor is defined by
the user. Its main purpose is to initialize the instance variables with the default values. Also, it is majorly used for object
creation.
2. Parameterized Constructor: The parameterized constructor in Java, is the constructor which is capable of initializing the
instance variables with the provided values. In other words, the constructors which take the arguments are called
parameterized constructors.
Q7. What is singleton class in Java and how can we make a class singleton?
Singleton class is a class whose only one instance can be created at any given time, in one JVM. A class can be made singleton by
making its constructor private.
Q8. What is the difference between Array list and vector in Java?
ArrayList Vector
Array List is not synchronized. Vector is synchronized.
Array List is fast as it’s non-synchronized. Vector is slow as it is thread safe.
If an element is inserted into the Array List,
Vector defaults to doubling size of its array.
it increases its Array size by 50%.
Array List does not define the increment
Vector defines the increment size.
size.
Array List can only use Iterator for Vector can use both Enumeration and Iterator for
traversing an Array List. traversing.
Q9. What is the difference between equals () and == in Java?
Equals() method is defined in Object class in Java and used for checking equality of two objects defined by business logic.
“==” or equality operator in Java is a binary operator provided by Java programming language and used to compare primitives and
objects. public boolean equals(Object o) is the method provided by the Object class. The default implementation uses == operator to
compare two objects. For example: method can be overridden like String class. equals() method is used to compare the values of two
objects.
Q10. What are the differences between Heap and Stack Memory in Java?
The major difference between Heap and Stack memory are:
1. Default
2. Private
3. Protected
4. Public
1 class Abc {
2 member variables // class body
3 methods}
Q16. What is an object in Java and how is it created?
An object is a real-world entity that has a state and behavior. An object has three characteristics:
1. State
2. Behavior
3. Identity
1. Inheritance: Inheritance is a process where one class acquires the properties of another.
2. Encapsulation: Encapsulation in Java is a mechanism of wrapping up the data and code together as a single unit.
3. Abstraction: Abstraction is the methodology of hiding the implementation details from the user and only providing the
functionality to the users.
4. Polymorphism: Polymorphism is the ability of a variable, function or object to take multiple forms.
Q19. What is the difference between a local variable and an instance variable?
In Java, a local variable is typically used inside a method, constructor, or a block and has only local scope. Thus, this variable can be
used only within the scope of a block. The best benefit of having a local variable is that other methods in the class won’t be even aware
of that variable.
Example
1 class Test{
2 public String EmpName;
3 public int empAge;
4 }
Q20. Differentiate between the constructors and methods in Java?
Methods Constructors
1. Used to represent the behavior of an object 1. Used to initialize the state of an object
4. No default method is provided by the compiler 4. A default constructor is provided by the compiler if the class has none
5. Method name may or may not be same as class name 5. Constructor name must always be the same as the class name
In case you are facing any challenges with these Java IMP questions, please comment on your problems in the section below.
final variable
When the final keyword is used with a variable then its value can’t be changed once assigned. In case the no value has been assigned to
the final variable then using only the class constructor a value can be assigned to it.
final method
When a method is declared final then it can’t be overridden by the inheriting class.
final class
When a class is declared as final in Java, it can’t be extended by any subclass class but it can extend other class.
break continue
1. Can be used in switch and loop (for, while, do while)
1. Can be only used with loop statements
statements
2. It causes the switch or loop statements to terminate the 2. It doesn’t terminate the loop but causes the loop to jump to the next
moment it is executed iteration
3. It terminates the innermost enclosing loop or switch 3. A continue within a loop nested with a switch will cause the next loop
immediately iteration to execute
Example break:
1 for (int i = 0; i < 5; i++)
2 {
3 if (i == 3)
4 {
break;
5 }
6 System.out.println(i);
7 }
8
Example continue:
1
for (int i = 0; i < 5; i++)
2 {
3 if(i == 2)
4 {
5 continue;
6 }
System.out.println(i);
7 }
8
Q23.What is an infinite loop in Java? Explain with an example.
An infinite loop is an instruction sequence in Java that loops endlessly when a functional exit isn’t met. This type of loop can be the
result of a programming error or may also be a deliberate action based on the application behavior. An infinite loop will terminate
automatically once the application exits.
For example:
1
public class InfiniteForLoopDemo
2 {
3 public static void main(String[] arg) {
4 for(;;)
5 System.out.println("Welcome to Edureka!");
6 // To terminate this program press ctrl + c in the console.
}
7 }
8
this() super()
1. this() represents the current instance of a class 1. super() represents the current instance of a parent/base class
2. Used to call the default constructor of the same class 2. Used to call the default constructor of the parent/base class
3. Used to access methods of the current class 3. Used to access methods of the base class
4. Used for pointing the current class instance 4. Used for pointing the superclass instance
5. Must be the first line of a block 5. Must be the first line of a block
Q25. What is Java String Pool?
Java String pool refers to a collection of Strings which are stored in heap memory. In this, whenever a new object is created, String pool
first checks whether the object is already present in the pool or not. If it is present, then the same reference is returned to the variable else
new object will be created in the String pool and the respective reference will be returned.
Q26. Differentiate between static and non-static methods in Java.
Array ArrayList
Cannot contain values of different data types Can contain values of different data types.
Size must be defined at the time of
Size can be dynamically changed
declaration
Need to specify the index in order to add
No need to specify the index
data
Arrays are not type parameterized Arraylists are type
Arrays can contain primitive data types as Arraylists can contain only objects, no primitive
well as objects data types are allowed
Q32. What is a Map in Java?
In Java, Map is an interface of Util package which maps unique keys to values. The Map interface is not a subset of the main Collection
interface and thus it behaves little different from the other collection types. Below are a few of the characteristics of Map interface:
Q33. What is collection class in Java? List down its methods and interfaces.
In Java, the collection is a framework that acts as an architecture for storing and manipulating a group of objects. Using Collections you
can perform various tasks like searching, sorting, insertion, manipulation, deletion, etc. Java collection framework includes the
following:
Interfaces
Classes
Methods
The below image shows the complete hierarchy of the Java Collection.
In case you are facing any challenges with these java IMP questions, please comment on your problems in the section below.
OOPS Java IMP Questions
Q1. What is Polymorphism?
Polymorphism is briefly described as “one interface, many implementations”. Polymorphism is a characteristic of being able to assign a
different meaning or usage to something in different contexts – specifically, to allow an entity such as a variable, a function, or an object
to have more than one form. There are two types of polymorphism:
Compile time polymorphism is method overloading whereas Runtime time polymorphism is done using inheritance and interface.
1
2 class Car {
3 void run()
4 {
5 System.out.println(“car is running”);
}
6
}
7 class Audi extends Car {
8 void run()
9 {
10 System.out.prinltn(“Audi is running safely with 100km”);
}
11
public static void main(String args[])
12 {
13 Car b= new Audi(); //upcasting
14 b.run();
15 }
}
16
17
Q3. What is abstraction in Java?
Abstraction refers to the quality of dealing with ideas rather than events. It basically deals with hiding the details and showing the
essential things to the user. Thus you can say that abstraction in Java is the process of hiding the implementation details from the user
and revealing only the functionality to them. Abstraction can be achieved in two ways:
A class which inherits the properties is known as Child Class whereas a class whose properties are inherited is known as Parent class.
1. Single Inheritance: In single inheritance, one class inherits the properties of another i.e there will be only one parent as well
as one child class.
2. Multilevel Inheritance: When a class is derived from a class which is also derived from another class, i.e. a class having
more than one parent class but at different levels, such type of inheritance is called Multilevel Inheritance.
3. Hierarchical Inheritance: When a class has more than one child classes (subclasses) or in other words, more than one child
classes have the same parent class, then such kind of inheritance is known as hierarchical.
4. Hybrid Inheritance: Hybrid inheritance is a combination of two or more types of inheritance.
In Method Overloading, Methods of the same class shares the same name but each method must have a different number of
parameters or parameters having different types and order.
Method Overloading is to “add” or “extend” more to the method’s behavior.
It is a compile-time polymorphism.
The methods must have a different signature.
It may or may not need inheritance in Method Overloading.
1
2 class Adder {
3 Static int add(int a, int b)
4 {
return a+b;
5 }
6 Static double add( double a, double b)
7 {
8 return a+b;
9 }
public static void main(String args[])
10 {
11 System.out.println(Adder.add(11,11));
12 System.out.println(Adder.add(12.3,12.6));
13 }}
14
Method Overriding:
In Method Overriding, the subclass has the same method with the same name and exactly the same number and type of
parameters and same return type as a superclass.
Method Overriding is to “Change” existing behavior of the method.
It is a run time polymorphism.
The methods must have the same signature.
It always requires inheritance in Method Overriding.
Java Cer
1
2 class Car {
3 void run(){
4 System.out.println(“car is running”);
}
5
Class Audi extends Car{
6 void run()
7 {
8 System.out.prinltn("Audi is running safely with 100km");
9 }
public static void main( String args[])
10
{
11 Car b=new Audi();
12 b.run();
13 }
14 }
15
Q9. Can you override a private or static method in Java?
You cannot override a private or static method in Java. If you create a similar method with the same return type and same method
arguments in child class then it will hide the superclass method; this is known as method hiding. Similarly, you cannot override a private
method in subclass because it’s not accessible there. What you can do is create another private method with the same name in the child
class. Let’s take a look at the example below to understand it better.
1 class Base {
2 private static void display() {
System.out.println("Static or class method from Base");
3 }
4 public void print() {
5 System.out.println("Non-static or instance method from Base");
6 }
7 class Derived extends Base {
private static void display() {
8 System.out.println("Static or class method from Derived");
9 }
10 public void print() {
11 System.out.println("Non-static or instance method from Derived");
12 }
public class test {
13 public static void main(String args[])
14 {
15 Base obj= new Derived();
16 obj1.display();
17 obj1.print();
}
18 }
19
20
21
22
Q10. What is multiple inheritance? Is it supported by Java?
If a child class inherits the property from multiple classes is known as multiple inheritance. Java
does not allow to extend multiple classes.
The problem with multiple inheritance is that if multiple parent classes have the same method name, then at runtime it becomes difficult
for the compiler to decide which method to execute from the child class.
Therefore, Java doesn’t support multiple inheritance. The problem is commonly referred to as Diamond Problem.
In case you are facing any challenges with these java IMP questions, please comment on your problems in the section below.
A Marker interface can be defined as the interface having no data member and member functions. In simpler terms, an empty interface is
called the Marker interface. The most common examples of Marker interface in Java are Serializable, Cloneable etc. The marker
interface can be declared as follows.
Object cloning in Java is the process of creating an exact copy of an object. It basically means the ability to create an object with a
similar state as the original object. To achieve this, Java provides a method clone() to make use of this functionality. This method creates
a new instance of the class of the current object and then initializes all its fields with the exact same contents of corresponding fields. To
object clone(), the marker interface java.lang.Cloneable must be implemented to avoid any runtime exceptions. One thing you must
note is Object clone() is a protected method, thus you need to override it.
1 class Demo
2 {
3 int i;
public Demo(int a)
4 {
5 i=k;
6 }
7 public Demo(int a, int b)
8 {
9 //body
}
10 }
11
12
In case you are facing any challenges with these java IMP questions, please comment on your problems in the section below. Apart from
this Java IMP Questions Blog, if you want to get trained from professionals on this technology, you can opt for a structured training from
edureka!
Servlets – Java IMP Questions
Q1. What is a servlet?
Java Servlet is server-side technologies to extend the capability of web servers by providing support for dynamic response and
data persistence.
The javax.servlet and javax.servlet.http packages provide interfaces and classes for writing our own servlets.
All servlets must implement the javax.servlet.Servlet interface, which defines servlet lifecycle methods. When implementing a
generic service, we can extend the GenericServlet class provided with the Java Servlet API. The HttpServlet class provides
methods, such as doGet() and doPost(), for handling HTTP-specific services.
Most of the times, web applications are accessed using HTTP protocol and thats why we mostly extend HttpServlet class.
Servlet API hierarchy is shown in below image.
Q2. What are the differences between Get and Post methods?
Get Post
Limited amount of data can be sent Large amount of data can be sent because
because data is sent in header. data is sent in body.
Not Secured because data is exposed Secured because data is not exposed in
in URL bar. URL bar.
Can be bookmarked Cannot be bookmarked
Idempotent Non-Idempotent
It is more efficient and used than Post It is less efficient and used
Q3. What is Request Dispatcher?
RequestDispatcher interface is used to forward the request to another resource that can be HTML, JSP or another servlet in same
application. We can also use this to include the content of another resource to the response.
There are two methods defined in this interface:
1.void forward()
2.void include()
Q4. What are the differences between forward() method and sendRedirect()
methods?
1. Servlet is loaded
2. Servlet is instantiated
3. Servlet is initialized
4. Service the request
5. Servlet is destroyed
ServletConfig ServletContext
It represent whole web application running on
Servlet config object represent single servlet
particular JVM and common for all the servlet
Its like local parameter associated with Its like global parameter associated with whole
particular servlet application
It’s a name value pair defined inside the
ServletContext has application wide scope so
servlet section of web.xml file so it has servlet
define outside of servlet tag in web.xml file.
wide scope
getServletConfig() method is used to get the getServletContext() method is used to get the
config object context object.
for example shopping cart of a user is a To get the MIME type of a file or application
specific to particular user so here we can use session related information is stored using servlet
servlet config context object.
Q8. What are the different methods of session management in servlets?
Session is a conversational state between client and server and it can consists of multiple request and response between client and server.
Since HTTP and Web Server both are stateless, the only way to maintain a session is when some unique information about the session
(session id) is passed between server and client in every request and response.
1. User Authentication
2. HTML Hidden Field
3. Cookies
4. URL Rewriting
5. Session Management API
In case you are facing any challenges with these java IMP questions, please comment your problems in the section below. Apart from
this Java IMP Questions Blog, if you want to get trained from professionals on this technology, you can opt for a structured training from
edureka! Click below to know more.
JDBC – Java IMP Questions
1. What is JDBC Driver?
JDBC Driver is a software component that enables java application to interact with the database. There are 4 types of JDBC drivers:
Interfaces:
Connection
Statement
PreparedStatement
ResultSet
ResultSetMetaData
DatabaseMetaData
CallableStatement etc.
Classes:
DriverManager
Blob
Clob
Types
SQLException etc.
In case you are facing any challenges with these java IMP questions, please comment on your problems in the section below.
Statement executeQuery(String query) is used to execute Select queries and returns the ResultSet. ResultSet returned is never null even
if there are no records matching the query. When executing select queries we should use executeQuery method so that if someone tries to
execute insert/update statement it will throw java.sql.SQLException with message “executeQuery method can not be used for update”.
Statement executeUpdate(String query) is used to execute Insert/Update/Delete (DML) statements or DDL statements that returns
nothing. The output is int and equals to the row count for SQL Data Manipulation Language (DML) statements. For DDL statements, the
output is 0.
You should use execute() method only when you are not sure about the type of statement else use executeQuery or executeUpdate
method.
1. Statement: Used for general purpose access to the database and executes a static SQL query at runtime.
2. PreparedStatement: Used to provide input parameters to the query during execution.
3. CallableStatement: Used to access the database stored procedures and helps in accepting runtime parameters.
In case you are facing any challenges with these java IMP questions, please comment your problems in the section below. Apart from
this Java IMP Questions Blog, if you want to get trained from professionals on this technology, you can opt for a structured training from
edureka!