Interviewing a Java Developer? Look to these 8 questions for inspiration!
- Explain JVM
(JVM) refers to Java virtual machine and it is a virtual machine that is deployed for the execution of a Java byte code. A byte code file is compiled from a Java source file and executed by a JVM.
- How is the JDK different from the JRE?
The Java Virtual Machine (JVM) is the platform for Java Runtime Environment (JRE). The JRE has components such as browser plugins for the execution of applets. On the other hand, Java Development Kit (JDK) is the complete software development kit for Java and houses Tools such as Java Debugger and Javadoc, the compilers and the JRE.
- How do Java Developers view the Keyword “static”?
The static keyword denotes that a member variable or method is open to be accessed without any considered instantiation of its original class. Static methods are not available for overriding in Java environment as it necessitates the activation of dynamic binding at each runtime while static methods require static binding. The inability to be associated with any class makes it impossible for static methods to be overridden as its binding takes place only at compile time.
- In a static context, is it possible to access a variable that is non-static?
A static variable In Java, a static variable has a constant value and is in a class of its own. The initialization of a static variable takes place when its class is loaded by the Java Virtual Machine. All non-static variables do not exist in this class, so when java developers try accessing them, the compiler will register a complaint to show that they lack any association.
- What Data Types are supported by Java?
The Java programming language supports only 8 data types of primitive nature and they include: boolean char int long byte short float double. Autoboxing is the automatic conversion made by the Java compiler between data of primitive nature and those originating from object wrapper subgroups. When conversion takes place with the compiler, an int to an Integer, a double to a Double and others follow suit. If the conversion goes the other way, this operation is called unboxing.
- How is Overloading and Function Overriding viewed by Java Developers?
When at least two methods belong to a common class with a common name and unique parameters, it is known in Java as method overloading. On the flipside, when a method of an originator class is redefined by a child class, it is known as method overriding. Overridden methods are only valid when they retain the same nature and characteristics.
- What does the Constructor mean to Java Developers?
The creation of a new object results in a Constructor. A constructor is created for every class by default through the JAVAC (Java compiler).The closest parameter to the constructor in Java is the method overloading.
- Is there a place for multiple inheritances in Java?
No, multiple inheritance is not supported under java. There are possibilities for more than a single interface for each class, and it can be replicated on the same class.
Find more inspiration here: http://www.quora.com/What-are-good-interview-questions-for-Java-developers