RMI in Detail Self Test With Answers


1) Which of the following statements is not correct?

a) The rmi Remote interface declares a single method that must be implemented.
b) To use rmi begins with implementing the Remote interface
c) The Remote interface is in the java.rmi package
d) Methods declared inside the remote method be declared as throwing
    rmi's RemoteException exception.                                ( a )

2) Which is the top level class of the following?

a) UnicastRemoteObject
b) Activatable
c) RemoteServer
d) RemoteObject                                                             ( d )

3) Which of the following is not a key feature of the rmi implementation class.

a) A no-args constructor that throws RemoteException
b) an extension of a RemoteServer subclass
c) The implementation class will implement Remote interface.
d) Remote methods are defined in the implementation class              ( c )

 // Comment: Regarding ( b ) the implementation class will typically extend a
// RemoteServer subclass whether UnicastRemoteServer, Activatable or a
// user defined extension. Regarding c, this statement is incorrect as it is a
// Remote interface subinterface that the implementation class implements.

4) The RMI Server does all but one of the following.

a) may set the SecurityManager
b) Instantiates the remote object implementation
c) binds the object to a name in the the naming service
d) catches for RemoteException                                  ( d )

5) RMI cannot pass which of the following objects?

a) primitive types
b) remote objects
c) class objects that are not extensions or implementations of any interfaces
d) class objects that implement serializable                   ( c )

6) The codebase attributes of different JVMs can be used in combination with
loading classes in the regular CLASSPATH to create various paths to classes
needed by the RMI system. Which of the following systems described by
G, Seshadri's RMI tutorial represents the least dynamic system regarding class
loading.

a) Closed
b) Server Based
c) Client Dynamic
d) Client Bootstrap                     ( a  )

// Comment In the Closed system all the classes used are in the class path of either
the client or servers JVM.