Core Java Study guide and interview questions - Part 5

This is the 5th part of the 500+ Core JAVA interview questions and answers. These questions can also be used as a quick study guide for preparing for an interview or for any Core JAVA concepts revision. These questions cover all the topics in core JAVA from basics to advanced concepts. 

1.What must be the order of catch blocks when catching more than one exception?   
The sub classes must come first. Otherwise it will give a compile time error.

2.What is de-serialization?
De-serialization is the process of restoring the state of an object.
           
3. How can you force garbage collection in java?   
You cannot force Garbage Collection, but you can request for it by calling the method System.gc().  But it doesn't mean that Garbage Collection will start immediately. The garbage collection is a low priority thread of JVM.

4. How can you call a constructor from another constructor ?
By using this() reference.
       
5. How can you call the constructor of super class ?
By using super() syntax.
       
6. What's the difference between normal methods and constructors?
Constructors must have the same name of the class and can not have a return type. They are called only once,  while regular methods can be called whenever required. We cannot explicitly call a constructor.
       
7. What is the use of packages in java ?   
Packages are a way to organize files in java when a project consists of more than one module. It helps in resolving name conflicts when different modules have classes with the same names.

8.Why threads block or enters to waiting state on I/O?
Threads enters to waiting state or block on I/O because other threads can execute while the I/O operations are performed.
   
9.How can we call a method or variable of the super class from child class ?   
We can use super.method() or super.variable syntax for this purpose.
       
10. If you are overriding equals() method of a class, what other methods you might need to override ?
hashCode

11. what is a the difference between System.err and System.out?
We can redirect System.out to another file but we cannot redirect System.err stream
   
12.What is the difference between yield() and sleep()?
When a object invokes yield() it returns to ready state. But when an object invokes sleep() method enters to not ready state.
   
13.What is the difference between synchronized block and synchronized method ?
Synchronized blocks place locks for the specified block where as synchronized methods place locks for the entire method.

14.What is externalizable ?   
It is an interface that extends Serializable. It is having two different methods writeExternal() and readExternal. This interface allows us to customize the output.

15.What is serialization ?   
Serialization is the process of saving the state of an object.

16. What are  the differences between an abstract class and an interface?
An abstract class can have concrete method, which is not allowed in an interface. Abstract class can have private or protected methods and variables and only public methods and variables are allowed in interface. We can implement more than one interface , but we can extend only one abstract class. Interfaces provides loose coupling where as abstract class provides tight coupling.

17.How Observer and Observable are used?
Subclass of Observable class maintain a list of observers. Whenever an Observable object is updated, it invokes the update() method of each of its observers to notify the observers that it has a changed state. An observer is  any object that implements the interface Observer. 
   
18.What is an abstract method ?
An abstract method is a method that don't have a body. It is declared with modifier abstract.
           
19.What is a Vector?
Vector is a grow able array of objects.
               
20.How can you create your own exception ?   
Our class must extend either Exception or its sub class
   
21.What is List interface ?
List is an ordered collection of objects.

22.What are the differences between boolean & operator and  & operator
When an expression containing the & operator is evaluated, both operands are evaluated. And the & operator is applied to the operand. When an expression containing && operator is evaluated, the first operand is evaluated. If the first operand returns a value of true then only the second operand is evaluated otherwise the second part will not get executed.  && is also called short cut and.
       
23.What are Wrapper Classes ?
They are wrappers to primitive data types. They allow us to access primitives as objects.

24.What are transient variables in java?
Transient variables are variable that cannot be serialized.
   
25.What is the use of the finally block?
Finally is the block of code that executes always. The code in finally block will execute even if an exception is occurred. finally will not execute when the user calls System.exit().
   
26.What is the difference between  time slicing and  preemptive scheduling ?
In preemptive scheduling, highest priority task continues execution till it enters a not running state or a higher priority task comes into existence. In time slicing, the task continues its execution for a predefined period of time and reenters the pool of ready tasks. 
       
27.Can we declare an anonymous class as both extending a class and implementing an interface?
No. An anonymous class can extend a class or implement an interface, but it cannot be declared to do both
       
28.Can we call finalize() method ?
Yes.  Nobody will stop us to call any method , if it is accessible in our class. But a garbage collector cannot call an object's finalize method if that object is reachable.

29.What is synchronization?
Synchronization is the ability to control the access of multiple threads to shared resources. Synchronization stops multithreading. With synchronization , at  a time only one thread will be able to access a shared resource.
       
30.What is the initial state of a thread when it is created and started?
The thread is in ready state   

31. What is the difference between a continue statement and a break statement?
Break statement results in the immediate 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.
   
32 What is the difference between String and StringBuffer class ?
Strings are immutable (constant), their values cannot be changed after they are created. StringBuffer supports mutable objects.
       
33 How many times may an object's finalize() method be invoked by the garbage collector?
Only once.   

34 What is thread priority?
Thread Priority is an integer value that identifies the relative order in which it should be executed with respect to others. The thread priority values ranging from 1- 10 and the default value is 5. But if a thread have higher priority doesn't means that it will execute first. The thread scheduling depends on the OS.
       
35 Does garbage collection guarantee that a program will not run out of memory?
Garbage collection does not guarantee that a program will not run out of memory. It is also possible for programs to create objects that are not subject to garbage collection. And there is no guarantee that Garbage Collection thread will be executed.
   
36 What are the different states of a thread ?
The different thread states are ready, running, waiting and dead.
       
37 What must a class do to implement an interface?
It must identify the interface in its implements clause. Also it must provide definition for all the methods in the interface otherwise it must be declared abstract.

38 What is the difference between static and non static inner class ?
A non-static inner class can have an object instances that are associated with instances of the class's outer class. A static inner class can not have any object instances. 

39 What is an abstract class?
An abstract class is an incomplete class. It is declared with the modifier abstract. We cannot create objects of the abstract class. It is used to specify a common behavioral protocol for all its child classes.
       
40 What does wait method do ?
It causes current thread to wait until either another thread invokes notify or notifyAll method of the current object, or a specified amount of time has elapsed.
       
41 What is a native method?
A native method is a method that is implemented in a language other than Jav
   
42 Why we cannot override static methods?
Static means they are associated with a class. In static methods , the binding mechanism is static binding. So it must be available at the compile time.
       
43 Can we catch an error in our java program ?
Yes. We can . We can catch anything that is derived from Throwable. Since Error is a sub class of Throwable we can catch an error also.

44 What is static ?
static means one per class.  static variables are created when the class loads. They are associated with the class.  In order to access a static we don't need objects. We can directly access static methods and variable by calling classname.variablename.
       
45 Which is the base class for all classes ?
javlang.Object.

46 What is the difference between readers and streams?
Readers are character oriented where streams are byte oriented.  The readers are having full support for Unicode dat

47 What are the restrictions placed on overloading a method ?
Overloading methods must differ in their parameter list, or number of parameters.
   
48 What are the different primitive data type in java ?
There are 8 primitive types in jav boolean , char, byte, short, int long, float, double.
     
49 What will happen if the results were not caught ?
An uncaught exception results in the uncaughtException() method of the thread's ThreadGroup, which results in the termination of the program.
   
50 What are different type of exceptions in Java?
There are two types of exceptions in jav Checked exceptions and Unchecked exceptions. Any exception that is is derived from Throwable and Exception is called checked exception except RuntimeException and its sub classes. The compiler will check whether the exception is caught or not at compile time. We need to catch the checked exception or declare in the throws clause.  Any exception that is derived from Error and RuntimeException is called unchecked exception. We don't need to explicitly catch a unchecked exception.

Next : 1000+ core JAVA quick study material & interview Questions and Answers

0 Comment to "Core Java Study guide and interview questions - Part 5"

Post a Comment