ewalkins.com

March 25, 2008

Java interview questions 2

Filed under: Java interview questions — ashu @ 6:41 pm

Java interview questions

1. What are synchronized methods and synchronized statements? Synchronized

methods are methods that are used to control access to an object. For example, 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.

2. What are different ways in which a thread can enter the waiting state? A

thread can enter the waiting state by invoking its sleep() method, blocking on I/O,

unsuccessfully attempting to acquire an object’s lock, or invoking an object’s

wait() method. It can also enter the waiting state by invoking its (deprecated)

suspend() method.

3. Can a lock be acquired on a class? Yes, a lock can be acquired on a class. This

lock is acquired on the class’s Class object.

4. What’s new with the stop(), suspend() and resume() methods in new JDK

1.2? The stop(), suspend() and resume() methods have been deprecated in JDK

1.2.

5. What is the preferred size of a component? The preferred size of a component

is the minimum component size that will allow the component to display

normally.

6.

Welcome to

www.ewalkins.com

7. What method is used to specify a container’s layout? The setLayout() method

is used to specify a container’s layout. For example, setLayout(new

FlowLayout()); will be set the layout as FlowLayout.

8. Which containers use a FlowLayout as their default layout? The Panel and

Applet classes use the FlowLayout as their default layout.

9. What state does a thread enter when it terminates its processing? When a

thread terminates its processing, it enters the dead state.

10. What is the Collections API? The Collections API is a set of classes and

interfaces that support operations on collections of objects. One example of class

in Collections API is Vector and Set and List are examples of interfaces in

Collections API.

11. What is the List interface? The List interface provides support for ordered

collections of objects. It may or may not allow duplicate elements but the

elements must be ordered.

12. How does Java handle integer overflows and underflows? It uses those low

order bytes of the result that can fit into the size of the type allowed by the

operation.

13. What is the Vector class? The Vector class provides the capability to implement

a growable array of objects. The main visible advantage of this class is

programmer needn’t to worry about the number of elements in the Vector.

14. What modifiers may be used with an inner class that is a member of an outer

class? A (non-local) inner class may be declared as public, protected, private,

static, final, or abstract.

15. If a method is declared as protected, where may the method be accessed? A

protected method may only be accessed by classes or interfaces of the same

package or by subclasses of the class in which it is declared.

16. What is an Iterator interface? The Iterator interface is used to step through the

elements of a Collection.

17. How many bits are used to represent Unicode, ASCII, UTF-16, and UTF-8

characters? Unicode requires 16 bits, ASCII require 7 bits (although the ASCII

character set uses only 7 bits, it is usually represented as 8 bits), UTF-8 represents

characters using 8, 16, and 18 bit patterns, UTF-16 uses 16-bit and larger bit

patterns

18. What is the difference between yielding and sleeping? Yielding means a thread

returning to a ready state either from waiting, running or after creation, where as

sleeping refers a thread going to a waiting state from running state. With reference

to Java, when a task invokes its yield() method, it returns to the ready state and

when a task invokes its sleep() method, it returns to the waiting state

19. What are wrapper classes? Wrapper classes are classes that allow primitive

types to be accessed as objects. For example, Integer, Double. These classes

contain many methods which can be used to manipulate basic data types

Does garbage collection guarantee that a program will not run out of memory? No,

it doesn’t. It is possible for programs to use up memory resources faster than they are

garbage collected. It is also possible for programs to create

Welcome to

www.ewalkins.com

20. objects that are not subject to garbage collection. The main purpose of Garbage

Collector is recover the memory from the objects which are no longer required

when more memory is needed.

21. Name Component subclasses that support painting? The following classes

support painting: Canvas, Frame, Panel, and Applet.

22. What is a native method? A native method is a method that is implemented in a

language other than Java. For example, one method may be written in C and can

be called in Java.

23. How can you write a loop indefinitely?

for(;;) //for loop

while(true); //always true

24. Can an anonymous class be declared as implementing an interface and

extending a class? An anonymous class may implement an interface or extend a

superclass, but may not be declared to do both.

25. What is the purpose of finalization? The purpose of finalization is to give an

unreachable object the opportunity to perform any cleanup processing before the

object is garbage collected. For example, closing a opened file, closing a opened

database Connection.

26. What invokes a thread’s run() method? After a thread is started, via its start()

method or that of the Thread class, the JVM invokes the thread’s run() method

when the thread is initially executed.

27. What is the GregorianCalendar class? The GregorianCalendar provides support

for traditional Western calendars.

28. What is the SimpleTimeZone class? The SimpleTimeZone class provides

support for a Gregorian calendar.

29. What is the Properties class? The properties class is a subclass of Hashtable that

can be read from or written to a stream. It also provides the capability to specify a

set of default values to be used.

30. What is the purpose of the Runtime class? The purpose of the Runtime class is

to provide access to the Java runtime system.

31. What is the purpose of the System class? The purpose of the System class is to

provide access to system resources.

32. What is the purpose of the finally clause of a try-catch-finally statement? The

finally clause is used to provide the capability to execute code no matter whether

or not an exception is thrown or caught. For example,

try

{

 

//some statements

}

catch

{

// statements when exception is cought

}

finally

{

//statements executed whether exception occurs or not

}

33. What is the Locale class? The Locale class is used to tailor program output to

the conventions of a particular geographic, political, or cultural region.

34. What must a class do to implement an interface? It must provide all of the

methods in the interface and identify the interface in its implements clause.

Welcome to

www.ewalkins.com

For Latest Updated Job Alerts Join This Group. We Will Send Latest Updated Jobs Information’s Directly To In Your Inbox

Click Here To Join Our Group

 

Source: – www.ewalkins.com

Java interview questions

Filed under: Java interview questions — ashu @ 6:37 pm

Java interview questions

1. Can there be an abstract class with no abstract methods in it? - Yes

2. Can an Interface be final? - No

3. Can an Interface have an inner class? - Yes.

4. public interface abc

5. {

6. static int i=0; void dd();

7. class a1

8. {

9. a1()

10. {

11. int j;

12. System.out.println(“inside”);

13. };

14. public static void main(String a1[])

15. {

16. System.out.println(“in interfia”);

17. }

18. }

19. }

20. Can we define private and protected modifiers for variables in interfaces? -

No

21. What is Externalizable? - Externalizable is an Interface that extends Serializable

Interface. And sends data into Streams in Compressed Format. It has two

methods, writeExternal(ObjectOuput out) and readExternal(ObjectInput in)

22. What modifiers are allowed for methods in an Interface? - Only public and

abstract modifiers are allowed for methods in interfaces.

23. What is a local, member and a class variable? - Variables declared within a

method are “local” variables. Variables declared within the class i.e not within

any methods are “member” variables (global variables). Variables declared within

the class i.e not within any methods and are defined as “static” are class variables

24. What are the different identifier states of a Thread? - The different identifiers

of a Thread are: R – Running or runnable thread, S – Suspended thread, CW -

Thread waiting on a condition variable, MW – Thread waiting on a monitor lock,

MS – Thread suspended waiting on a monitor lock

25. What are some alternatives to inheritance? - Delegation is an alternative to

inheritance. Delegation means that you include an instance of another class as an

instance variable, and forward messages to the instance. It is often safer than

inheritance because it forces you to think about each message you forward,

because the instance is of a known class, rather than a new class, and because it

doesn’t force you to accept all the methods of the super class: you can provide

only the methods that really make sense. On the other hand, it makes you write

more code, and it is harder to re-use (because it is not a subclass).

Welcome to

www.ewalkins.com

26. Why isn’t there operator overloading? - Because C++ has proven by example

that operator overloading makes code almost impossible to maintain. In fact there

very nearly wasn’t even method overloading in Java, but it was thought that this

was too useful for some very basic methods like print(). Note that some of the

classes like DataOutputStream have unoverloaded methods like writeInt() and

writeByte().

27. What does it mean that a method or field is “static”? - Static variables and

methods are instantiated only once per class. In other words they are class

variables, not instance variables. If you change the value of a static variable in a

particular object, the value of that variable changes for all instances of that class.

Static methods can be referenced with the name of the class rather than the name

of a particular object of the class (though that works too). That’s how library

methods like System.out.println() work. out is a static field in the

java.lang.System class.

28. How do I convert a numeric IP address like 192.18.97.39 into a hostname like

java.sun.com?

29. String hostname = InetAddress.getByName(“192.18.97.39″).getHostName();

30. Difference between JRE/JVM/JDK?

31. Why do threads block on I/O? - Threads block on i/o (that is enters the waiting

state) so that other threads may execute while the I/O operation is performed.

32. 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.

33. Is null a keyword? - The null value is not a keyword.

34. Which characters may be used as the second character of an identifier,but

not as the first character of an identifier? - The digits 0 through 9 may not be

used as the first character of an identifier but they may be used after the first

character of an identifier.

35. What modifiers may be used with an inner class that is a member of an outer

class? - A (non-local) inner class may be declared as public, protected, private,

static, final, or abstract.

36. How many bits are used to represent Unicode, ASCII, UTF-16, and UTF-8

characters? - Unicode requires 16 bits and ASCII require 7 bits. Although the

ASCII character set uses only 7 bits, it is usually represented as 8 bits. UTF-8

represents characters using 8, 16, and 18 bit patterns. UTF-16 uses 16-bit and

larger bit patterns.

37. What are wrapped classes? - Wrapped classes are classes that allow primitive

types to be accessed as objects.

Welcome to

www.ewalkins.com

Welcome to

www.ewalkins.com

38. What restrictions are placed on the location of a package statement within a

source code file? - A package statement must appear as the first line in a source

code file (excluding blank lines and comments).

39. What is the difference between preemptive scheduling and time slicing? -

Under preemptive scheduling, the highest priority task executes until it enters the

waiting or dead states or a higher priority task comes into existence. Under time

slicing, a task executes for a predefined slice of time and then reenters the pool of

ready tasks. The scheduler then determines which task should execute next, based

on priority and other factors.

40. What is a native method? - A native method is a method that is implemented in

a language other than Java.

41. What are order of precedence and associativity, and how are they used? -

Order of precedence determines the order in which operators are evaluated in

expressions. Associatity determines whether an expression is evaluated left-toright

or right-to-left

42. What is the catch or declare rule for method declarations? - If a checked

exception may be thrown within the body of a method, the method must either

catch the exception or declare it in its throws clause.

43. Can an anonymous class be declared as implementing an interface and

extending a class? - An anonymous class may implement an interface or extend a

superclass, but may not be declared to do both.

44. What is the range of the char type? - The range of the char type is 0 to 2^16 – 1.

For Latest Updated Job Alerts Join This Group. We Will Send Latest Updated Jobs Information’s Directly To In Your Inbox

Click Here To Join Our Group

 

Source: – www.ewalkins.com

Blog at WordPress.com.