Language Fundamentals - Programming

Q1:

What will be the output of the program?
public class CommandArgs 
{
    public static void main(String [] args) 
    {
        String s1 = args[1];
        String s2 = args[2];
        String s3 = args[3];
        String s4 = args[4];
        System.out.print(' args[2] = ' + s2);
    }
}
and the command-line invocation is > java CommandArgs 1 2 3 4

A args[2] = 2

B args[2] = 3

C args[2] = null

D An exception is thrown at runtime.

ANS:A - args[2] = 2

An exception is thrown because in the code String s4 = args[4];, the array index (the fifth element) is out of bounds. The exception thrown is the cleverly named ArrayIndexOutOfBoundsException.