Java.lang

    1) java.lang package is automatically imported into all programs.

            True
            False

        Ans : a

    2) What are the interfaces defined by java.lang?

        Ans : Cloneable, Comparable and Runnable.

    3) What are the constants defined by both Flaot and Double classes?

        Ans : MAX_VALUE,

        MIN_VALUE,

        NaN ,

        POSITIVE_INFINITY,

        NEGATIVE_INFINITY and

        TYPE.

    4) What are the constants defined by Byte, Short, Integer and Long?

        Ans : MAX_VALUE,

        MIN_VALUE and

        TYPE.

    5) What are the constants defined by both Float and Double classes?

        Ans : MAX_RADIX,

        MIN_RADIX,

        MAX_VALUE,

        MIN_VALUE and

        TYPE.

    6) What is the purpose of the Runtime class?

        Ans : The purpose of the Runtime class is to provide access to the Java runtime system.

    7) What is the purpose of the System class?

        Ans : The purpose of the System class is to provide access to system resources.

    8) Which class is extended by all other classes?

        Ans : Object class is extended by all other classes.

    9) Which class can be used to obtain design information about an object?

        Ans : The Class class can be used to obtain information about an object’s design.

    10) Which method is used to calculate the absolute value of a number?

        Ans : abs( ) method.

    11) What are E and PI?

        Ans : E is the base of the natural logarithm and PI is the mathematical value pi.

    12) Which of the following classes is used to perform basic console I/O?

            System
            SecurityManager
            Math
            Runtime

        Ans : a.

    13) Which of the following are true?

            The Class class is the superclass of the Object class.
            The Object class is final.
            The Class class can be used to load other classes.
            The ClassLoader class can be used to load other classes.

        Ans : c and d.

    14) Which of the following methods are methods of the Math class?

            absolute( )
            log( )
            cosine( )
            sine( )

        Ans : b.

    15) Which of the following are true about the Error and Exception classes?

            Both classes extend Throwable.
            The Error class is final and the Exception class is not.
            The Exception class is final and the Error is not.
            Both classes implement Throwable.

        Ans : a.

    16) Which of the following are true?

            The Void class extends the Class class.
            The Float class extends the Double class.
            The System class extends the Runtime class.
            The Integer class extends the Number class.

        Ans : d.

    17) Which of the following will output -4.0

            System.out.println(Math.floor(-4.7));
            System.out.println(Math.round(-4.7));
            System.out.println(Math.ceil(-4.7));
            System.out.println(Math.Min(-4.7));

        Ans : c.

    18) Which of the following are valid statements

        a) public class MyCalc extends Math
        b) Math.max(s);
        c) Math.round(9.99,1);
        d) Math.mod(4,10);

        e) None of the above.

        Ans : e.

    19) What will happen if you attempt to compile and run the following code?

        Integer ten=new Integer(10);

        Long nine=new Long (9);

        System.out.println(ten + nine);

        int i=1;

        System.out.println(i + ten);

            19 followed by 20
            19 followed by 11
            Error: Can't convert java lang Integer

        d) 10 followed by 1

        Ans : c.

Input/Output

    1) What is meant by Stream and what are the types of Streams and classes of the Streams?

        Ans : A Stream is an abstraction that either produces or consumes information.

        There are two types of Streams. They are:

        Byte Streams : Byte Streams provide a convenient means for handling input and output of bytes.

        Character Streams : Character Streams provide a convenient means for handling input and output of characters.

        Byte Stream classes : Byte Streams are defined by using two abstract classes. They are:InputStream and OutputStream.

        Character Stream classes : Character Streams are defined by using two abstract classes. They are : Reader and Writer.

    2) Which of the following statements are true?

            UTF characters are all 8-bits.
            UTF characters are all 16-bits.
            UTF characters are all 24-bits.
            Unicode characters are all 16-bits.
            Bytecode characters are all 16-bits.

        Ans : d.

    3) Which of the following statements are true?

            When you construct an instance of File, if you do not use the filenaming semantics of the local machine, the constructor will throw an IOException.
            When you construct an instance of File, if the corresponding file does not exist on the local file system, one will be created.
            When an instance of File is garbage collected, the corresponding file on the local file system is deleted.
            None of the above.

        Ans : a,b and c.

    4) The File class contains a method that changes the current working directory.

            True
            False

        Ans : b.

    5) It is possible to use the File class to list the contents of the current working directory.

            True
            False

        Ans : a.

    6) Readers have methods that can read and return floats and doubles.

            True
            False

        Ans : b.

    7) You execute the code below in an empty directory. What is the result?

    File f1 = new File("dirname");

    File f2 = new File(f1, "filename");

            A new directory called dirname is created in the current working directory.
            A new directory called dirname is created in the current working directory. A new file called filename is created in directory dirname.
            A new directory called dirname and a new file called filename are created, both in the current working directory.
            A new file called filename is created in the current working directory.
            No directory is created, and no file is created.

        Ans : e.

    8) What is the difference between the Reader/Writer class hierarchy and the InputStream/OutputStream class hierarchy?

        Ans : The Reader/Writer class hierarchy is character-oriented and the InputStream/OutputStream class hierarchy is byte-oriented.

    9) What is an I/O filter?

        Ans : An I/O filter is an object that reads from one stream and writes to another, usually altering the data in some way as it is passed from one stream to another.

    10) What is the purpose of the File class?

        Ans : The File class is used to create objects that provide access to the files and directories of a local file system.

    11) What interface must an object implement before it can be written to a stream as an object?

        Ans : An object must implement the Serializable or Externalizable interface before it can be written to a stream as an object.

    12) What is the difference between the File and RandomAccessFile classes?

        Ans : The File class encapsulates the files and directories of the local file system. The RandomAccessFile class provides the methods needed to directly access data contained in any part of a file.

    13) What class allows you to read objects directly from a stream?

        Ans : The ObjectInputStream class supports the reading of objects from input streams.

    14) What value does read( ) return when it has reached the end of a file?

        Ans : The read( ) method returns – 1 when it has reached the end of a file.

    15) What value does readLine( ) return when it has reached the end of a file?

        Ans : The readLine( ) method returns null when it has reached the end of a file.

    16) How many bits are used to represent Unicode, ASCII, UTF-16 and UTF-8 characters?

        Ans : Unicode requires 16-bits and ASCII requires 8-bits. Although the ASCII character set uses only 1-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.

    17) Which of the following are true?

            The InputStream and OutputStream classes are byte-oriented.
            The ObjectInputStream and ObjectOutputStream do not support serialized object input and output.
            The Reader and Writer classes are character-oriented.
            The Reader and Writer classes are the preferred solution to serialized object output.

        Ans : a and c.

    18) Which of the following are true about I/O filters?

            Filters are supported on input, but not on output.
            Filters are supported by the InputStream/OutputStream class hierarchy, but not by the Reader/Writer class hierarchy.
            Filters read from one stream and write to another.
            A filter may alter data that is read from one stream and written to another.

        Ans : c and d.

    19) Which of the following are true?

            Any Unicode character is represented using 16-bits.
            7-bits are needed to represent any ASCII character.
            UTF-8 characters are represented using only 8-bits.
            UTF-16 characters are represented using only 16-bits.

        Ans : a and b.

    20) Which of the following are true?

            The Serializable interface is used to identify objects that may be written to an output stream.
            The Externalizable interface is implemented by classes that control the way in which their objects are serialized.
            The Serializable interface extends the Externalizable interface.
            The Externalizable interface extends the Serializable interface.

        Ans : a, b and d.

    21) Which of the following are true about the File class?

            A File object can be used to change the current working directory.
            A File object can be used to access the files in the current directory.
            When a File object is created, a corresponding directory or file is created in the local file system.
            File objects are used to access files and directories on the local file system.
            File objects can be garbage collected.
            When a File object is garbage collected, the corresponding file or directory is deleted.

        Ans : b, d and e.

    22) How do you create a Reader object from an InputStream object?

            Use the static createReader( ) method of InputStream class.
            Use the static createReader( ) method of Reader class.
            Create an InputStreamReader object, passing the InputStream object as an argument to the InputStreamReader constructor.
            Create an OutputStreamReader object, passing the InputStream object as an argument to the OutputStreamReader constructor.

        Ans : c.

    23) Which of the following are true?

            Writer classes can be used to write characters to output streams using different character encodings.
            Writer classes can be used to write Unicode characters to output streams.
            Writer classes have methods that support the writing of the values of any Java primitive type to output streams.
            Writer classes have methods that support the writing of objects to output streams.

        Ans : a and b.

    24) The isFile( ) method returns a boolean value depending on whether the file object is a file or a directory.

            True.
            False.

        Ans : a.

    25) Reading or writing can be done even after closing the input/output source.

            True.
            False.

        Ans : b.

    26) The ________ method helps in clearing the buffer.

        Ans : flush( ).

    27) The System.err method is used to print error message.

            True.
            False.

        Ans : a.

    28) What is meant by StreamTokenizer?

        Ans : StreamTokenizer breaks up InputStream into tokens that are delimited by sets of characters.

        It has the constructor : StreamTokenizer(Reader inStream).

        Here inStream must be some form of Reader.

    29) What is Serialization and deserialization?

        Ans : Serialization is the process of writing the state of an object to a byte stream.

        Deserialization is the process of restoring these objects.

    30) Which of the following can you perform using the File class?

        a) Change the current directory
        b) Return the name of the parent directory
        c) Delete a file
        d) Find if a file contains text or binary information

        Ans : b and c.

    31) How can you change the current working directory using an instance of the File class called FileName?

            FileName.chdir("DirName").
            FileName.cd("DirName").
            FileName.cwd("DirName").
            The File class does not support directly changing the current directory.

     Ans : d.

Applets

    1) What is an Applet? Should applets have constructors?

        Ans : Applet is a dynamic and interactive program that runs inside a Web page displayed by a Java capable browser. We don’t have the concept of Constructors in Applets.

    2) How do we read number information from my applet’s parameters, given that Applet’s getParameter() method returns a string?

        Ans : Use the parseInt() method in the Integer Class, the Float(String) constructor in the Class Float, or the Double(String) constructor in the class Double.

    3) How can I arrange for different applets on a web page to communicate with each other?

        Ans : Name your applets inside the Applet tag and invoke AppletContext’s getApplet() method in your applet code to obtain references to the other applets on the page.

    4) How do I select a URL from my Applet and send the browser to that page?

        Ans : Ask the applet for its applet context and invoke showDocument() on that context object.

        Eg. URL targetURL;

        String URLString

        AppletContext context = getAppletContext();

        try{

        targetUR L = new URL(URLString);

        } catch (Malformed URLException e){

        // Code for recover from the exception

        }

        context. showDocument (targetURL);

    5) Can applets on different pages communicate with each other?

        Ans : No. Not Directly. The applets will exchange the information at one meeting place

        either on the local file system or at remote system.

    6) How do Applets differ from Applications?

        Ans : Appln: Stand Alone

        Applet: Needs no explicit installation on local m/c.

        Appln: Execution starts with main() method.

        Applet: Execution starts with init() method.

        Appln: May or may not be a GUI

        Applet: Must run within a GUI (Using AWT)

    7) How do I determine the width and height of my application?

        Ans : Use the getSize() method, which the Applet class inherits from the Component

        class in the Java.awt package. The getSize() method returns the size of the applet as

        a Dimension object, from which you extract separate width, height fields.

        Eg. Dimension dim = getSize ();

        int appletwidth = dim.width ();

    8) What is AppletStub Interface?

        Ans : The applet stub interface provides the means by which an applet and the browser communicate. Your code will not typically implement this interface.

    9) It is essential to have both the .java file and the .html file of an applet in the same directory.

            True.
            False.

        Ans : 2.

    10) The <PARAM> tag contains two attributes namely _________ and _______.

        Ans : Name , value.

    11) Passing values to parameters is done in the _________ file of an applet.

        Ans : .html.

    12) What tags are mandatory when creating HTML to display an applet

            name, height, width
            code, name
            codebase, height, width
            code, height, width

        Ans : 4.

    13) Applet’s getParameter( ) method can be used to get parameter values.

            True.
            False.

        Ans : a.

    14) What are the Applet’s Life Cycle methods? Explain them?

        Ans : init( ) method - Can be called when an applet is first loaded.

        start( ) method - Can be called each time an applet is started.

        paint( ) method - Can be called when the applet is minimized or refreshed.

        stop( ) method - Can be called when the browser moves off the applet’s page.

        destroy( ) method - Can be called when the browser is finished with the applet.

    15) What are the Applet’s information methods?

        Ans : getAppletInfo( ) method : Returns a string describing the applet, its author ,copy

        right information, etc.

        getParameterInfo( ) method : Returns an array of string describing the applet’s parameters.

    16) All Applets are subclasses of Applet.

            True.
            False.

        Ans : a.

    17) All Applets must import java.applet and java.awt.

            True.
            False.

        Ans : a.

    18) What are the steps involved in Applet development?

        Ans : a) Edit a Java source file,

        b) Compile your program and

        c) Execute the appletviewer, specifying the name of your applet’s source file.

    19) Applets are executed by the console based Java run-time interpreter.

            True.
            False.

        Ans : b.

    20) Which classes and interfaces does Applet class consist?

        Ans : Applet class consists of a single class, the Applet class and three interfaces: AppletContext,

        AppletStub and AudioClip.

    21) What is the sequence for calling the methods by AWT for applets?

        Ans : When an applet begins, the AWT calls the following methods, in this sequence.

            init( )
            start( )
            paint( )

    22) When an applet is terminated, the following sequence of method cals takes place :

            stop( )
            destroy( )

    23) Which method is used to output a string to an applet?

        Ans : drawString ( ) method.

    24) Every color is created from an RGB value.

            True.
            False

        Ans : a. 

Event Handling

    1) The event delegation model, introduced in release 1.1 of the JDK, is fully compatible with the event model.

            True
            False

        Ans : b.

    2) A component subclass that has executed enableEvents( ) to enable processing of a certain kind of event cannot also use an adapter as a listener for the same kind of event.

            True
            False

        Ans : b.

    3) What is the highest-level event class of the event-delegation model?

        Ans : The java.util.eventObject class is the highest-level class in the event-delegation hierarchy.

    4) What interface is extended by AWT event listeners?

        Ans : All AWT event listeners extend the java.util.EventListener interface.

    5) What class is the top of the AWT event hierarchy?

        Ans : The java.awt.AWTEvent class is the highest-level class in the AWT event class hierarchy.

    6) What event results from the clicking of a button?

        Ans : The ActionEvent event is generated as the result of the clicking of a button.

    7) What is the relationship between an event-listener interface and an event-adapter class?

        Ans : An event-listener interface defines the methods that must be implemented by an event handler for a particular kind of event. An event adapter provides a default implementation of an event-listener interface.

    8) In which package are most of the AWT events that support the event-delegation model defined?

        Ans : Most of the AWT–related events of the event-delegation model are defined in the java.awt.event package. The AWTEvent class is defined in the java.awt package.

    9) What is the advantage of the event-delegation model over the earlier event-inheritance model?

        Ans : The event-delegation has two advantages over the event-inheritance model. They are :

            It enables event handling by objects other than the ones that generate the events. This allows a clean separation between a component’s design and its use.
            It performs much better in applications where many events are generated. This performance improvement is due to the fact that the event-delegation model does not have to repeatedly process unhandled events, as is the case of the event-inheritance model.

    10) What is the purpose of the enableEvents( ) method?

        Ans :The enableEvents( ) method is used to enable an event for a particular object.

    11) Which of the following are true?

            The event-inheritance model has replaced the event-delegation model.
            The event-inheritance model is more efficient than the event-delegation model.
            The event-delegation model uses event listeners to define the methods of event-handling classes.
            The event-delegation model uses the handleEvent( ) method to support event handling.

        Ans : c.

    12) Which of the following is the highest class in the event-delegation model?

            java.util.EventListener
            java.util.EventObject
            java.awt.AWTEvent
            java.awt.event.AWTEvent

        Ans : b.

    13) When two or more objects are added as listeners for the same event, which listener is first invoked to handle the event?

            The first object that was added as listener.
            The last object that was added as listener.
            There is no way to determine which listener will be invoked first.
            It is impossible to have more than one listener for a given event.

        Ans : c.

    14) Which of the following components generate action events?

            Buttons
            Labels
            Check boxes
            Windows

        Ans : a.

    15) Which of the following are true?

            A TextField object may generate an ActionEvent.
            A TextArea object may generate an ActionEvent.
            A Button object may generate an ActionEvent.
            A MenuItem object may generate an ActionEvent.

        Ans : a,c and d.

    16) Which of the following are true?

            The MouseListener interface defines methods for handling mouse clicks.
            The MouseMotionListener interface defines methods for handling mouse clicks.
            The MouseClickListener interface defines methods for handling mouse clicks.
            The ActionListener interface defines methods for handling the clicking of a button.

        Ans : a and d.

    17) Suppose that you want to have an object eh handle the TextEvent of a TextArea object t. How should you add eh as the event handler for t?

            t.addTextListener(eh);
            eh.addTextListener(t);
            addTextListener(eh.t);
            addTextListener(t,eh);

        Ans : a.

    18) What is the preferred way to handle an object’s events in Java 2?

            Override the object’s handleEvent( ) method.
            Add one or more event listeners to handle the events.
            Have the object override its processEvent( ) methods.
            Have the object override its dispatchEvent( ) methods.

        Ans : b.

    19) Which of the following are true?

            A component may handle its own events by adding itself as an event listener.
            A component may handle its own events by overriding its event-dispatching method.
            A component may not handle oits own events.
            A component may handle its own events only if it implements the handleEvent( ) method.

        Ans : a and b.

    20) How many types of events are provided by AWT? Explain them?

        Ans : The AWT provides two types of events. They are :

    21) Low-level event : A low-level event is the one that represents a low-level input or window-system occurrence on a visual component on the screen.

    22) Semantic event : Semantic event is defined at a higher-level to encapsulate the semantics of a user interface component’s model.

    23) A __________ is an object that originates or "fire" events.

        Ans : source.

    24) The event listener corresponding to handling keyboard events is the _________ .

        Ans : KeyListener.

    25) What are the types of mouse event listeners?

        Ans : MouseListener and MouseMotionListener.

    26) Which of the following are correct event handling methods

        a) mousePressed(MouseEvent e){}
        b) MousePressed(MouseClick e){}
        c) functionKey(KeyPress k){}
        d) componentAdded(ContainerEvent e){}

        Ans : a and d.

    27) Which of the following are true?

        a) A component may have only one event listener attached at a time
        b) An event listener may be removed from a component
        c) The ActionListener interface has no corresponding Adapter class
        d) The processing of an event listener requires a try/catch block

        Ans : b and c.

 AWT : windows, graphics and fonts

    1) How would you set the color of a graphics context called g to cyan?

            g.setColor(Color.cyan);
            g.setCurrentColor(cyan);
            g.setColor("Color.cyan");
            g.setColor("cyan’);
            g.setColor(new Color(cyan));

        Ans : a.

    2) The code below draws a line. What color is the line?

        g.setColor(Color.red.green.yellow.red.cyan);

        g.drawLine(0, 0, 100,100);

            Red
            Green
            Yellow
            Cyan
            Black

        Ans : d.

    3) What does the following code draw?

        g.setColor(Color.black);

        g.drawLine(10, 10, 10, 50);

        g.setColor(Color.RED);

        g.drawRect(100, 100, 150, 150);

            A red vertical line that is 40 pixels long and a red square with sides of 150 pixels
            A black vertical line that is 40 pixels long and a red square with sides of 150 pixels
            A black vertical line that is 50 pixels long and a red square with sides of 150 pixels
            A red vertical line that is 50 pixels long and a red square with sides of 150 pixels
            A black vertical line that is 40 pixels long and a red square with sides of 100 pixel

        Ans : b.

    4) Which of the statements below are true?

        a) A polyline is always filled.

        b) A polyline can not be filled.

        c) A polygon is always filled.

        d) A polygon is always closed

        e) A polygon may be filled or not filled

        Ans : b, d and e.

    5) What code would you use to construct a 24-point bold serif font?

            new Font(Font.SERIF, 24,Font.BOLD);
            new Font("SERIF", 24, BOLD");
            new Font("BOLD ", 24,Font.SERIF);
            new Font("SERIF", Font.BOLD,24);
            new Font(Font.SERIF, "BOLD", 24);

        Ans : 4.

    6) What does the following paint( ) method draw?

        Public void paint(Graphics g) {

        g.drawString("question #6",10,0);

        }

            The string "question #6", with its top-left corner at 10,0
            A little squiggle coming down from the top of the component, a little way in from the left edge

        Ans : 2.

    7) What does the following paint( ) method draw?

        Public void paint(Graphics g) {

        g.drawString("question #6",10,0);

        }

            A circle at (100, 100) with radius of 44
            A circle at (100, 44) with radius of 100
            A circle at (100, 44) with radius of 44
            The code does not compile

        Ans : 4.

    8) What is relationship between the Canvas class and the Graphics class?

        Ans : A Canvas object provides access to a Graphics object via its paint( ) method.

    9) What are the Component subclasses that support painting.

        Ans : The Canvas, Frame, Panel and Applet classes support painting.

    10) What is the difference between the paint( ) and repaint( ) method?

        Ans : The paint( ) method supports painting via a Graphics object. The repaint( ) method is used to cause paint( ) to be invoked by the AWT painting method.

    11) What is the difference between the Font and FontMetrics classes?

        Ans : The FontMetrics class is used to define implementation-specific properties, such as ascent and descent, of a Font object.

    12) Which of the following are passed as an argument to the paint( ) method?

            A Canvas object
            A Graphics object
            An Image object
            A paint object

        Ans : b.

    13) Which of the following methods are invoked by the AWT to support paint and repaint operations?

            paint( )
            repaint( )
            draw( )
            redraw( )

        Ans : a.

    14) Which of the following classes have a paint( ) method?

            Canvas
            Image
            Frame
            Graphics

        Ans : a and c.

    15) Which of the following are methods of the Graphics class?

            drawRect( )
            drawImage( )
            drawPoint( )
            drawString( )

        Ans : a, b and d.

    16) Which Font attributes are available through the FontMetrics class?

            ascent
            leading
            case
            height

        Ans : a, b and d.

    17) Which of the following are true?

            The AWT automatically causes a window to be repainted when a portion of a window has been minimized and then maximized.
            The AWT automatically causes a window to be repainted when a portion of a window has been covered and then uncovered.
            The AWT automatically causes a window to be repainted when application data is changed.
            The AWT does not support repainting operations.

        Ans : a and b.

    18) Which method is used to size a graphics object to fit the current size of the window?

        Ans : getSize( ) method.

    19) What are the methods to be used to set foreground and background colors?

        Ans : setForeground( ) and setBackground( ) methods.

    20) You have created a simple Frame and overridden the paint method as follows

    public void paint(Graphics g){

     

    g.drawString("Dolly",50,10);

     

    }

    What will be the result when you attempt to compile and run the program?

        a) The string "Dolly" will be displayed at the centre of the frame

        b) An error at compilation complaining at the signature of the paint method
        c) The lower part of the word Dolly will be seen at the top of the form, with the top hidden.
        d) The string "Dolly" will be shown at the bottom of the form

        Ans : c.

    21) Where g is a graphics instance what will the following code draw on the screen.

    g.fillArc(45,90,50,50,90,180);

        a) An arc bounded by a box of height 45, width 90 with a centre point of 50,50, starting
        at an angle of 90 degrees traversing through 180 degrees counter clockwise.

        b) An arc bounded by a box of height 50, width 50, with a centre point of 45,90 starting
        at an angle of 90 degrees traversing through 180 degrees clockwise.

        c) An arc bounded by a box of height 50, width 50, with a top left at coordinates of 45,
        90, starting at 90 degrees and traversing through 180 degrees counter clockwise.

        d) An arc starting at 45 degrees, traversing through 90 degrees clockwise bounded by a
        box of height 50, width 50 with a centre point of 90, 180.

        Ans : c.

    22) Given the following code
    import java.awt.*;
    public class SetF extends Frame{
    public static void main(String argv[]){
    SetF s = new SetF();
    s.setSize(300,200);
    s.setVisible(true);
    }
    }
    How could you set the frame surface color to pink

        a)s.setBackground(Color.pink);
        b)s.setColor(PINK);
        c)s.Background(pink);
        d)s.color=Color.pink

        Ans : a.