Core Java Interview Questions and Answers Part 2
Q: What kind of variables a class can consist of?
A: A class consist of Local variable, instance variables and class variables.
Q: What is a Local Variable?
A: Variables defined inside methods, constructors or blocks are called local variables. The variable will be declared and initialized within the method and it will be destroyed when the method has completed.
Q: What is a Instance Variable?
A: Instance variables are variables within a class but outside any method. These variables are instantiated when the class is loaded.
Q: What is a Class Variable?
A: These are variables declared with in a class, outside any method, with the static keyword.
Q: What is Singleton class?
A: Singleton class control object creation, limiting the number to one but allowing the flexibility to create more objects if the situation changes.
Q: What do you mean by Constructor?
A: Constructor gets invoked when a new object is created. Every class has a constructor. If we do not explicitly write a constructor for a class the java compiler builds a default constructor for that class.
Q: List the three steps for creating an Object for a class?
A: An Object is first declared, then instantiated and then it is initialized.
Q: What is the default value of byte datatype in Java?
A: Default value of byte datatype is 0.
Q: What is the default value of float and double datatype in Java?
A: Default value of float and double datatype in different as compared to C/C++. For float its 0.0f and for double it’s 0.0d
Q: When a byte datatype is used?
A: This data type is used to save space in large arrays, mainly in place of integers, since a byte is four times smaller than an int.
Q: What is a static variable?
A: Class variables also known as static variables are declared with the static keyword in a class, but outside a method, constructor or a block.
Q: What do you mean by Access Modifier?
A: Java provides access modifiers to set access levels for classes, variables, methods and constructors. A member has package or default accessibility when no accessibility modifier is specified.
Q: What is protected access modifier?
A: Variables, methods and constructors which are declared protected in a superclass can be accessed only by the subclasses in other package or any class within the package of the protected members’ class.
Q: What do you mean by synchronized Non Access Modifier?
A: Java provides these modifiers for providing functionalities other than Access Modifiers, synchronized used to indicate that a method can be accessed by only one thread at a time.
Q: According to Java Operator precedence, which operator is considered to be with highest precedence?
A: Postfix operators i.e () [] . is at the highest precedence.
Q: Variables used in a switch statement can be used with which datatypes?
A: Variables used in a switch statement can only be a byte, short, int, or char.
Q: When parseInt() method can be used?
A: This method is used to get the primitive data type of a certain String.
Q: Why is String class considered immutable?
A: The String class is immutable, so that once it is created a String object cannot be changed. Since String is immutable it can safely be shared between many threads ,which is considered very important for multi-threaded programming.
Q: Why is StringBuffer called mutable?
A: The String class is considered as immutable so that once it is created a String object cannot be changed. If there is a necessity to make a lot of modifications to Strings of characters then StringBuffer should be used.
Q: What is the difference between StringBuffer and StringBuilder class?
A: Use StringBuilder whenever possible because it is faster than StringBuffer. But, if thread safety is necessary then use StringBuffer objects.
Q: Which package is used for pattern matching with regular expressions?
A: java.util.regex package is used for this purpose.
Q: java.util.regex consists of which classes?
A: java.util.regex consists of three classes: Pattern class, Matcher class and PatternSyntaxException class.