MY mENU


Wednesday 28 March 2012

How do I convert a numeric IP address like 192.18.97.39 into a hostname like java.sun.com?

 String hostname = InetAddress.getByName("192.18.97.39").getHostNam

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.

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().

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

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

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

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)

Can an Interface have an inner class?

 - Yes.
 public interface abc
 {
  static int i=0; void dd();
  class a1
  {
   a1()
   {
    int j;
    System.out.println("inside");
   };
   public static void main(String a1[])
   {
    System.out.println("in interfia");
   }
  }
 }

What are the methods in Object?

 - clone, equals, wait, finalize, getClass, hashCode, notify, notifyAll, toString

What is composition? What is aggregation?

- Holding the reference of the other class within some other class is known as composition.


- It is a special type of composition. If you expose all the methods of a composite class and route the method call to the composite method through its reference, then it is called aggregation.

What is skeleton and stub? what is the purpose of those?

 - Stub is a client side representation of the server, which takes care of communicating with the remote server. 
   Skeleton is the server side representation. But that is no more in use… it is deprecated long before in JDK.

What is the purpose of assert keyword used in JDK1.4.x?

 - In order to validate certain expressions. It effectively replaces the if block and automatically throws the AssertionError on failure. This keyword should be used for the critical arguments. Meaning, without that the method does nothing.

What is reflection?

- Reflection allows programmatic access to information about the fields, methods and constructors of loaded classes, and the use reflected fields, methods, and constructors to operate on their underlying counterparts on objects, within security restrictions.

What is the purpose of Void class?

 - The Void class is an uninstantiable placeholder class to hold a reference to the Class object representing the primitive Java type void.