static class loading in java 6 means loading a class with new operator as below:
List mylist = new ArrayList();
Dynamic loading class loading in java means invoking the functions of a class loader at run time as below:
List myList = (List)class.forName(sampleClassName).newInstance();
Primordial or bootstrap class loader in java is a special Class loader that is embedded within the JVM or Java Virtual Machine. it is used to load JDK internal classes and java.* packages. primordial or bootstrap class loader in java is not reloadable.
False. Same singleton class loaded by different class loader is not equal. Because Two objects loaded by different class loaders are not equal.
RMI in the context of distributed java applications is an API(Application Programming Interface) that allows us to invoke a method on an object existing in another address space that may or may not be on the same machine. In other words RMI is an object-oriented Implementation of RPC(Remote procedure call).
Socket class is used as an end point for client side of the connection and the ServerSocket class is used as an end point of server side of the connection, respectively.
In java distributed programming RPC or Remote Procedure call can be seen as inter process communication API that is used to call a procedure in another address space mainly on another computer on a shared network. RMI or Remote method Invocation is Object oriented Implementation of RPC or Remote Procedure call.
RMI or Remote Method Invocation can be used to to talk with another Java application while Soap can be used to to talk to applications written in any language including java.
SOAP implementation for distributed application is slower then plain sockets.
RMI or Remote Method Invocation can be used to to talk with another Java application while sockets can be used to to talk to applications written in any language including java. RMI is good for interaction involving small size of data Sockets is good for interaction involving large size of data .
similarity: Both RMI(Remote Method Invocation) and CORBA is another object-oriented RPC mechanism for RPC or Remote Procedure call.
Differences: RMI is a language dependent standard but CORBA language independent standard. CORBA has a standard for TP monitors but Java RMI does not have it.
Java SE 6 specification focused on new specifications and APIs including:
- XML processing and Web services
- JDBC 4.0
- Annotation-based programming
- Java compiler APIs
- Application client GUI APIs
- Java 1.6 runs faster than Java 1.5.
- Java 1.6 makes programming easier by implementing various tools such as SwingWorker and JTable to develop user interface.
- Java 1.6 includes new or, in some cases, improved monitoring and management tools, including the "infamous" Jhat, which is used to explore core dumps. It also includes more diagnostic information, making bug fixing somewhat easier.
- In java 1.6,Java DB, a new database management tool, has been included. Java DB is based on the open-source Apache Derby and is supported by Sun.
Applications run faster on the desktop and servers New 'Dynamic Attach' diagnostics simplify troubleshooting Expanded Solaris DTrace support provides additional value on Solaris Improved 'native' look and feel across Solaris, Linux, and Windows First Java platform with full support for Windows Vista.
The difference in loading of first class and subsequent class in java is that the first class is loaded by static main() method and the subsequent classes are loaded by the classes already loaded and running in JVM or Java Virtual Machine.