You can create an abstract class that  contains only abstract methods. On the other hand, you can create an  interface that declares the same methods. So can you use abstract  classes instead of interfaces?
 Sometimes. But your class may be a descendent of another class and in  this case the interface is your only option.
 What comes to mind when someone mentions a shallow copy in Java?  
Object cloning. 
If you're overriding the method equals() of an object, which other  method you might also consider? 
hashCode() 
You are planning to do an indexed search in a list of objects. Which of  the two Java collections should you use: ArrayList or LinkedList? 
ArrayList 
How would you make a copy of an entire Java object with its state?  
Have this class implement Cloneable interface and call its method  clone(). 
How can you minimize the need of garbage collection and make the memory  use more effective? 
Use object pooling and weak object references. 
There are two classes: A and B. The class B need to inform a class A  when some important event has happened. What Java technique would you  use to implement it? 
If these classes are threads I'd consider notify() or notifyAll(). For  regular classes you can use the Observer interface. 
What access level do you need to specify in the class declaration to  ensure that only classes from the same directory can access it?
   You do not need to specify any access level, and Java will use a default  package access level.
What is the difference between an Interface and an Abstract class? 
An abstract class can have instance methods that implement a default  behavior. An Interface can only declare constants and instance methods,  but cannot implement default behavior and all methods are implicitly  abstract. An interface has all public members and no implementation. An  abstract class is a class which may have the usual flavors of class  members (private, protected, etc.), but has some abstract methods.  
What is the purpose of garbage collection in Java, and when is it used? 
The purpose of garbage collection is to identify and discard objects  that are no longer needed by a program so that their resources can be  reclaimed and reused. A Java object is subject to garbage collection  when it becomes unreachable to the program in which it is used. 
Describe synchronization in respect to multithreading.  
With respect to multithreading, synchronization is the capability to  control the access of multiple threads to shared resources. Without  synchonization, it is possible for one thread to modify a shared  variable while another thread is in the process of using or updating  same shared variable. This usually leads to significant errors. 
Explain different way of using thread?
   The thread could be implemented by using runnable interface or by  inheriting from the Thread class. The former is more advantageous,  'cause when you are going for multiple inheritance..the only interface  can help. 
What are pass by reference and passby value? 
Pass By Reference means the passing the address itself rather than  passing the value. Passby Value means passing a copy of the value to be  passed.
What is HashMap and Map?  
Map is Interface and Hashmap is class that implements that. 
Difference between HashMap and HashTable?  
The HashMap class is roughly equivalent to Hashtable, except that it is  unsynchronized and permits nulls. (HashMap allows null values as key and  value whereas Hashtable doesnt allow). HashMap does not guarantee that  the order of the map will remain constant over time. HashMap is  unsynchronized and Hashtable is synchronized.
Difference between Vector and ArrayList?  
Vector is synchronized whereas arraylist is not.
No comments:
Post a Comment