What is the default value of the local
variables?
The local
variables are not initialized to any default value, neither primitives nor
object references. If you try to use these variables without initializing them
explicitly, the java compiler will not compile the code. It will complain abt the local varaible not being initilized..
How many objects are created in the following
piece of code?
MyClass c1,
c2, c3;
c1
= new MyClass ();
c3
= new MyClass ();
Only 2
objects are created, c1 and c3. The reference c2 is only declared and not
initialized.
Can a public class MyClass
be defined in a source file named YourClass.java?
No the
source file name, if it contains a public class, must be the same as the public
class name itself with a .java extension.
Can main method be declared final?
Yes, the
main method can be declared final, in addition to being public static.
What will be the output of the following
statement?
System.out.println
("1" + 3);
It will
print 13.
What will be the default values of all the
elements of an array defined as an instance variable?
If the array
is an array of primitive types, then all the elements of the array will be
initialized to the default value corresponding to that primitive type. e.g. All the elements of an array of int
will be initialized to 0, while that of boolean type
will be initialized to false. Whereas if the array is an array of references
(of any type), all the elements will be initialized to null.
What if the main method is declared as private?
The program
compiles properly but at runtime it will give “Main method not public.”
message.
What is meant by pass by reference and pass by value in Java?
Pass by reference means, passing the address itself rather than passing the value. Pass by value means passing a copy of the value.
If you’re overriding the method equals()
of an object, which other method you might also consider?
hashCode()
What is Byte Code? Or What gives java
it’s “write once and run anywhere” nature?
All Java programs are compiled into class files that contain bytecodes. These byte codes can be run in any platform and hence java is said to be platform independent.
Expain the reason for each keyword of public static void main(String args[])?
public- main(..) is the first method called by java environment when a program is executed so it has to accessible from java environment. Hence the access specifier has to be public.
static: Java
environment should be able to call this method without creating an instance of the
class , so this method must be declared as static.
=style4>void: main does
not return anything so the return type must be void
The argument String indicates the
argument type which is given at the command line and arg
is an array for string given during command line.
What are the differences between == and .equals() ? Or
what is difference between == and equals Or
Difference between == and equals method Or What would you use to compare two String variables - the operator ==
or the method equals()? Or
How is it possible for two String objects
with identical values not to be equal under the == operator?
The == operator compares two
objects to determine if they are the same object in memory i.e. present in the
same memory location. It is possible for two String objects to have the same
value, but located in different areas of memory.
== compares
references while .equals compares contents. The method public boolean equals(Object obj) is provided by the Object class and can be overridden.
The default implementation returns true only if the object is compared with
itself, which is equivalent to the equality operator == being used to compare
aliases to the object. String, BitSet, Date, and File
override the equals() method. For two String objects,
value equality means that they contain the same character sequence. For the
Wrapper classes, value equality means that the primitive values are equal.
public class EqualsTest {
public static void main(String[] args) {
String s1 = “abc”; String s2 = s1; String s5 = “abc”; String s3 = new String(”abc”); String s4 = new String(”abc”); System.out.println(”== comparison : ” + (s1 == s5)); System.out.println(”== comparison : ” + (s1 == s2)); System.out.println(”Using equals method : ” + s1.equals(s2)); System.out.println(”== comparison : ” + s3 == s4); System.out.println(”Using equals method : ” + s3.equals(s4)); } } |
Output
== comparison : true
== comparison : true
Using equals method : true
false
Using equals method : true
No comments:
Post a Comment