|
Technical Interview Questions
Javascript Interview Questions
Oracle Interview Questions
J2EE Interview Questions
C++
Interview Questions
XML
Interview Questions
EJB
Interview Questions
JSP
Interview Questions
.........More
Programming Source Codes
Java Source Codes
C Source Codes
.........More
Soft Skills
Communication Skills
Leadership Skills
.........More
|
|
Java Interview Questions and Answers
Does Java pass by Value or reference?
Its uses Reference while manipulating objects but pass by value when
sending method arguments. Those who feel why I added this simple
question in this section while claiming to be maintaining only strong
and interesting questions, go ahead and answer following questions.
a)What is the out put of:
import java.util.*;
class TestCallByRefWithObject
{
ArrayList list = new ArrayList(5);
public void remove(int index){
list.remove(index);
}
public void add(Object obj){
list.add(obj);
}
public void display(){
System.out.println(list);
}
public static void main(String[] args)
{
TestCallByRefWithObject test = new TestCallByRefWithObject();
test.add("1");
test.add("2");
test.add("3");
test.add("4");
test.add("5");
test.remove(4);
test.display();
}
}
b) And now what is the output of:
import java.util.*;
class TestCallByRefWithInt
{
int i = 5;
public void decrement(int i){
i--;
}
public void increment(int i){
i++;
}
public void display(){
System.out.println("\nValue of i is : " +i);
}
public static void main(String[] args)
{
TestCallByRefWithInt test = new TestCallByRefWithInt();
test.increment(test.i);
test.display();
}
} Why Thread is faster compare to process?
A thread is never faster than a process. If you run a thread(say there's
a process which has spawned only one thread) in one JVM and a process in
another and that both of them require same resources then both of them
would take same time to execute. But, when a program/Application is
thread based(remember here there will be multiple threads running for a
single process) then definetly a thread based appliation/program is
faster than a process based application. This is because, when ever a
process requires or waits for a resource CPU takes it out of the
critical section and allocates the mutex to another process.
Before deallocating the ealier one, it stores the context(till what
state did it execute that process) in registers. Now if this deallocated
process has to come back and execute as it has got the resource for
which it was waiting, then it can't go into critical section directly.
CPU asks that process to follow scheduling algorithm. So this process
has to wait again for its turn. While in the case of thread based
application, the application is still with CPU only that thread which
requires some resource goes out, but its co threads(of same process/apllication)
are still in the critical section. Hence it directly comes back to the
CPU and does not wait outside. Hence an application which is thread
based is faster than an application which is process based.
Be sure that its not the competion between thread and process, its
between an application which is thread based or process based.
When and How is an object considered as Garbage by a GC?
An object is considered garbage when it can no longer be reached from
any pointer in the running program. The most straightforward garbage
collection algorithms simply iterate over every reachable object. Any
objects left over are then considered garbage.
Page Numbers :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
Have a Question ?
post your questions here. It
will be answered as soon as possible.
Check
Structs Interview
Questions for more Structs Interview Questions with answers
|