Java Interview Question & Answer Set-

| Saturday 9 July 2011


  1.  How are Java source code files named?
A Java source code file takes the name of a public class or interface that is defined within the file. A source code file may contain at most one public class or interface. If a public class or interface is defined within a source code file, then the source code file must take the name of the public class or interface. If no public class or interface is defined within a source code file, then the file must take on a name that is different than its classes and interfaces. Source code files use the .java extension.

2.    How does a try statement determine which catch clause should be used to handle an exception?
When an exception is thrown within the body of a try statement, the catch clauses of the try statement are examined in the order in which they appear. The first catch clause that is capable of handling the exception is executed. The remaining catch clauses are ignored.

  3. What is meant by garbage collection? How is it done in Java?
The purpose of garbage collection is to identify and discard objects that are no longer needed by a program so that their resources may be reclaimed and reused. Garbage collection does not guarantee that a program will not run out of memory. It is possible for programs to use up memory resources faster than they are garbage collected. It is also possible for programs to create objects that are not subject to garbage collection.
An object's finalize() method may only be invoked once by the garbage collector. The purpose of finalization is to give an unreachable object the opportunity to perform any cleanup processing before the object is garbage collected. An object is subject to garbage collection when it becomes unreachable to the program in which it is used.

  1. What is synchronization and why is it important?
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 object while another thread is in the process of using or updating that object's value. This often leads to significant errors.
          Synchronized methods are methods that are used to control access to an object. A thread only executes a synchronized method after it has acquired the lock for the method's object or class. Synchronized statements are similar to synchronized methods. A synchronized statement can only be executed after a thread has acquired the lock for the object or class referenced in the synchronized statement.



5. What is the difference between the Boolean & operator and the && operator?
If an expression involving the Boolean & operator is evaluated, both operands are evaluated. Then the & operator is applied to the operand. When an expression involving the && operator is evaluated, the first operand is evaluated. If the first operand returns a value of true then the second operand is evaluated. The && operator is then applied to the first and second operands. If the first operand evaluates to false, the evaluation of the second operand is skipped.

6. What is the purpose of the wait(), notify(), and notifyAll() methods?
The wait(),notify(), and notifyAll() methods are used to provide an efficient way for threads to wait for a shared resource. When a thread executes an object's wait() method, it enters the waiting state. It only enters the ready state after another thread invokes the object's notify() or notifyAll() methods..

7. What is a Java package and how is it used?
A Java package is a naming context for classes and interfaces. A package is used to create a separate name space for groups of classes and interfaces. Packages are also used to organize related classes and interfaces into a single API unit and to control accessibility to these classes and interfaces.
The package statement is used to define a package. If package is ommitted, the classes end up in the default package, which has no name. The package statement must appear as the first line in a source code file (excluding blank lines and comments).

8. What is meant by final class, methods and variables ?
          A final variable is essentially a constant. Variables declared as final do not occupy memory on a per-instance basis.

          Final methods are used to prevent method overriding.

          Final class is used to prevent inheritance.

9. What is method overriding?
          In a class hierarchy, when a method in a subclass has the same name and type signature as a method in its superclass, then the method in the subclass is said to override the method in its superclass. When an overridden method is called from within a subclass, it will always refer to the version of that method defined by the subclass. The version of the method defined by the superclass will be hidden.
  1. What is the Java Virtual Machine?
The JVM is the software that executes Java bytecode. A Java program, written in a file with a .java extension, is c ompiled into class files that have a .class extension. The class files are written in bytecode. To execute these files, the computer uses the JVM to interpret the bytecode. A browser that is capable of executing Java applets has the JVM built into it. To run a Java application, the Java Runtime Environment (JRE) must be installed. The bytecode is the same for all platforms, but the JVM will be different on different platforms because it needs to execute programs using the native code of the machine it is running on

0 comments:

Post a Comment

Popular Posts

Company Placement Papers

 

Copyright © 2010 All Question Papers Blogger Template by Dzignine