Core Java
|
Q: |
|
|
A: |
With respect to multithreading, synchronization is the capability to control the access of multiple threads to shared resources. Without synchronization, 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. |
|
Q: |
|
|
A: |
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 then only interface can help. |
|
Q: |
|
|
A: |
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. |
|
Q: |
|
|
A: |
Map is Interface and Hashmap is class that implements that. |
|
Q: |
|
|
A: |
· 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 doesn’t allow.
· HashMap does not guarantee that the order of the map will remain constant over time. |
|
Q: |
|
|
A: |
Vector is synchronized whereas Arraylist is not. |
|
Q: |
|
|
A: |
AWT are heavy-weight components. Swings are light-weight components. Hence swing works faster than AWT. |
|
Q: |
|
|
A: |
A constructor is a member function of a class that is used to create objects of that class. It has the same name as the class itself, has no return type, and is invoked using the new operator. |
|
Q: |
|
|
A: |
Some of the collection classes provide traversal of their contents via a java.util.Iterator interface. This interface allows you to walk through a collection of objects, operating on each object in turn. Remember when using Iterators that, they contain a snapshot of the collection at the time the Iterator was obtained; generally it is not advisable to modify the collection itself while traversing an Iterator. |
|
Q: |
State the significance of public, private, protected, default modifiers both singly and in combination and state the effect of package relationships on declared items qualified by these modifiers. |
|
A: |
public : Public class is visible in other packages, field is visible everywhere (class must be public too) |
|
Q: |
|
|
A: |
Abstract class must be extended/subclassed (to be useful). It serves as a template. A class that is abstract may not be instantiated (i.e., you may not call its constructor), abstract class may contain static data. Any class with an abstract method is automatically abstract itself, and must be declared as such. |
|
Q: |
|
|
A: |
Static means one per class, not one for each object no matter how many instance of a class might exist. This means that you can use them without creating an instance of a class. Static methods are implicitly final, because overriding is done based on the type of the object, and static methods are attached to a class, not an object. A static method in a superclass can be shadowed by another static method in a subclass, as long as the original method was not declared final. However, you can't override a static method with a nonstatic method. In other words, you can't change a static method into an instance method in a subclass. |
|
Q: |
|
|
A: |
A final class can't be extended i.e., final class may not be subclassed. A final method can't be overridden when its class is inherited. You can't change value of a final variable (is a constant). |
|
|
|
|
Q: |
|
|
A: |
The program compiles properly but at runtime it will give "Main method not public." message. |
|
Q: |
What if the static modifier is removed from the signature of the main method? |
|
A: |
Program compiles. But at runtime throws an error "NoSuchMethodError". |
|
Q: |
What if I write static public void instead of public static void? |
|
A: |
Program compiles and runs properly. |
|
Q: |
What if I do not provide the String array as the argument to the method? |
|
A: |
Program compiles but throws a runtime error "NoSuchMethodError". |
|
Q: |
If I do not provide any arguments on the command line, then the String array of Main method will be empty or null? |
|
A: |
It is empty. But not null. |
|
Q: |
What environment variables do I need to set on my machine in order to be able to run Java programs? |
|
A: |
CLASSPATH and PATH are the two variables. |
|
Q: |
|
|
A: |
No the program fails to compile. The compiler says that the main method is already defined in the class. |
|
Q: |
|
|
A: |
No. It is by default loaded internally by the JVM. |


