2018 Winter Model Answer Paper 1

Download as pdf or txt
Download as pdf or txt
You are on page 1of 23

MAHARASHTRA STATE BOARD OF TECHNICAL EDUCATION

(Autonomous)
(ISO/IEC - 27001 - 2013 Certified)

WINTER– 18 EXAMINATION
Subject Name: Java Programming Model Answer Subject Code: 17515
Important Instructions to examiners:
1) The answers should be examined by key words and not as word-to-word as given in the model
answer scheme.
2) The model answer and the answer written by candidate may vary but the examiner may try to
assess the understanding level of the candidate.
3) The language errors such as grammatical, spelling errors should not be given more
Importance (Not applicable for subject English and Communication Skills.
4) While assessing figures, examiner may give credit for principal components indicated in the
figure. The figures drawn by candidate and model answer may vary. The examiner may give
credit for any equivalent figure drawn.
5) Credits may be given step wise for numerical problems. In some cases, the assumed constant
values may vary and there may be some difference in the candidate’s answers and model
answer.
6) In case of some questions credit may be given by judgement on part of examiner of relevant
answer based on candidate’s understanding.
7) For programming language papers, credit may be given to any other program based on
equivalent concept.

Q. S. Answer Marking
No. Q. Scheme
No.
1 A Attempt any three of the following. 3x4=12
a) Explain following terms related to Java features. 4
i) Object Oriented ii) Complied and interpreted.
Ans: i) Object Oriented: 2 Marks for
 Almost everything in java is in the form of object. each)
 All program codes and data reside within objects and classes.
 Similar to other OOP languages java also has basic OOP properties
such as encapsulation, polymorphism, data abstraction, inheritance
etc.
 Java comes with an extensive set of classes (default) in packages.

ii) Compiled and Interpreted:


 Java is a two staged system. It combines both approaches.
 First java compiler translates source code into byte code instruction.
Byte codes are not machine instructions.
 In the second stage java interpreter generates machine code that can
be directly executed by machine. Thus java is both compile and
interpreted language.
b) Differentiate between Input stream class and Reader class. 4
Ans: any 4
Input Stream Class Reader Class Correct
Input Streams are used to read Reader classes are used to read Points. 1
bytes from a stream. character streams. Mark for
Input Stream class useful for Reader classes are best used to one point)
binary data such as images, video read character data.
1
MAHARASHTRA STATE BOARD OF TECHNICAL EDUCATION
(Autonomous)
(ISO/IEC - 27001 - 2013 Certified)

and serialized objects.


Input Stream classes are used to Reader class is used to read 16 bit
read 8 bit bytes. Unicode character stream.
An Input Stream is byte-oriented.A Reader is character-oriented.
Constructor: InputStream() Constructor:
Reader() and Reader(Object lock)
Methods: Methods:
read(); read();
read(byte[] b); read(char[] buf);
read(byte[] b, int off, int len); read(char[] buf, int off, int len);
read(charBuffer dest);
c) Explain any two logical operators in java with example. 4
Ans: Logical Operators: Logical operators are used when we want to form 2 Marks for
compound conditions by combining two or more relations. Java has three each
logical operators: operator.
&& : Logical AND Any 2
|| : Logical OR operators)
! : Logical NOT

Example:
public class Test
{
public static void main(String args[])
{
boolean a = true;
boolean b = false;
System.out.println("a && b = " + (a&&b));
System.out.println("a || b = " + (a||b) );
System.out.println("!(a && b) = " + !(a && b));
}
}
Output:
a && b = false
a || b = true
!(a && b) = true
d) Describe life cycle of thread. 4
Ans: 1 Mark for
correct
diagram,
3 M for
proper
explanation

Thread Life Cycle Thread has five different states throughout its life.
2
MAHARASHTRA STATE BOARD OF TECHNICAL EDUCATION
(Autonomous)
(ISO/IEC - 27001 - 2013 Certified)

1. Newborn State
2. Runnable State
3. Running State
4. Blocked State
5. Dead State
Thread should be in any one state of above and it can be move from one state
to another by different methods and ways.
1. Newborn state: When a thread object is created it is said to be in a new
born state. When the thread is in a new born state it is not scheduled running
from this state it can be scheduled for running by start() or killed by stop(). If
put in a queue it moves to runnable state.
2. Runnable State: It means that thread is ready for execution and is waiting
for the availability of the processor i.e. the thread has joined the queue and is
waiting for execution. If all threads have equal priority, then they are given
time slots for execution in round robin fashion. The thread that relinquishes
control joins the queue at the end and again waits for its turn. A thread can
relinquish the control to another before its turn comes by yield().
3. Running State: It means that the processor has given its time to the thread
for execution. The thread runs until it relinquishes control on its own or it is
pre-empted by a higher priority thread.
4 Blocked State: A thread can be temporarily suspended or blocked from
entering into the runnable and running state by using either of the following
thread method.
suspend() : Thread can be suspended by this method. It can be rescheduled
by resume().
wait(): If a thread requires to wait until some event occurs, it can be done
using wait method and can be scheduled to run again by notify().
sleep(): We can put a thread to sleep for a specified time period using
sleep(time) where time is in ms. It reenters the runnable state as soon as
period has elapsed /over.
5 Dead State: Whenever we want to stop a thread form running further we
can call its stop(). The statement causes the thread to move to a dead state. A
thread will also move to dead state automatically when it reaches to end of
the method. The stop method may be used when the premature death is
required
1 B Attempt any One of the following. 1x6=6
a) Define a class ‘Book’ with data members bookid, bookname and price. 6
Accept data for seven objects using Array of objects and display it.
Ans: import java.lang.*; Correct
import java.io.*; program
class Book with proper
{ logic 4
String bookname; Marks
int bookid;
int price;
BufferedReader br=new BufferedReader(new InputStreamReader
(System.in));
void getdata()
{
3
MAHARASHTRA STATE BOARD OF TECHNICAL EDUCATION
(Autonomous)
(ISO/IEC - 27001 - 2013 Certified)

try
{
System.out.println("Enter Book ID=");
bookid=Integer.parseInt(br.readLine());
System.out.println("Enter Book Name=");
bookname=br.readLine();
System.out.println("Enter Price=");
price=Integer.parseInt(br.readLine());
}
catch(Exception e)
{
System.out.println("Error");
}
}
void display()
{
System.out.println("Book ID="+bookid);
System.out.println("Book Name="+bookname);
System.out.println("Price="+price);
}
}
class bookdata
{
public static void main(String args[])
{
Book b[]=new Book[7];
for(int i=0;i<7;i++)
{
b[i]=new Book();
}
for(int i=0;i<7;i++)
{
b[i].getdata();
}
for(int i=0;i<7;i++)
{
b[i].display();
}
}
}
b) What is interface? Describe its syntax and features. 6
Ans: Definition: Java does not support multiple inheritances with only classes. Definition:
Java provides an alternate approach known as interface to support concept of 1 Mark,
multiple inheritance. An interface is similar to class which can define only 1 Mark for
abstract methods and final variables. syntax and
Syntax: 2 Marks for
access interface InterfaceName Features
{
Variables declaration;
4
MAHARASHTRA STATE BOARD OF TECHNICAL EDUCATION
(Autonomous)
(ISO/IEC - 27001 - 2013 Certified)

Methods declaration;
}

Features:
 The interfaces are used in java to implementing the concept of
multiple inheritance.
 The members of an interface are always declared as constant i.e. their
values are final.
 The methods in an interface are abstract in nature. I.e. there is no code
associated with them.
 It is defined by the class that implements the interface.
 Interface contains no executable code.
 We are not allocating the memory for the interfaces.
 We can‘t create object of interface.
 Interface cannot be used to declare objects. It can only be inherited by
a class.
 Interface can only use the public access specifier.
 An interface does not contain any constructor.
 Interfaces are always implemented.
 Interfaces can extend one or more other interfaces.
2 Attempt any Two of following 2x8=16
a) Write a program to create a vector with seven elements as 8
rd th
(10,30,50,20,40,10,20). Remove elements 3 and 4 position. Insert new
elements at 3rd position. Display original and current size of vector.
Ans: import java.util.*; (Correct
public class VectorDemo Program
{ with
public static void main(String args[]) Correct
{ logic 8
Vector v = new Vector(); marks
v.addElement(new Integer(10)); Creation of
v.addElement(new Integer(30)); vector:
v.addElement(new Integer(50)); 3Marks,
v.addElement(new Integer(20)); removing
v.addElement(new Integer(40)); elements 2
v.addElement(new Integer(10)); Marks
v.addElement(new Integer(20)); inserting
System.out println(v.size()); // display original size element 1
v.removeElementAt(2); // remove 3rd element Mark
v.removeElementAt(3); // remove 4th element Display
v.insertElementAt(11,2) // new element inserted at 3rd position original size
System.out.println("Size of vector after insert delete operations: " + v.size()); : 1 Mark
} and
} Current
size:
1Mark)

b) What is package in Java? Write a program to create a package and 8


5
MAHARASHTRA STATE BOARD OF TECHNICAL EDUCATION
(Autonomous)
(ISO/IEC - 27001 - 2013 Certified)

import the package in another class.


Ans: Package: Java provides a mechanism for partitioning the class namespace (Definition:
into more manageable parts called package (i.e package are container for a 2 Mark,
classes). The package is both naming and visibility controlled mechanism. any correct
Package can be created by including package as the first statement in java Program
source code. Any classes declared within that file will belong to the specified with proper
package. logic: 6
Syntax: Mark)
package pkg;
Here, pkg is the name of the package

Program:
package1:
package package1;
public class Box
{
int l= 5;
int b = 7;
int h = 8;
public void display()
{
System.out.println("Volume is:"+(l*b*h));
}
}
}

Source file:
import package1.Box;
class VolumeDemo
{
public static void main(String args[])
{
Box b=new Box();
b.display();
}
}
c) Write syntax and example of 8
i)Draw Poly ii)Draw Rect iii)Filloval iv)Draw Arc()
Ans: i) Draw Poly: drawPoly() method is used to draw arbitrarily shaped figures. (Each one
Syntax: void drawPoly(int x[], int y[], int numPoints) for 2 Mark)
The polygon‟s end points are specified by the co-ordinates pairs contained
within the x and y arrays.
The number of points define by x and y is specified by numPoints.
Example:
int xpoints[]={30,200,30,200,30};
int ypoints[]={30,30,200,200,30};
int num=5;
g.drawPoly(xpoints,ypoints,num);

6
MAHARASHTRA STATE BOARD OF TECHNICAL EDUCATION
(Autonomous)
(ISO/IEC - 27001 - 2013 Certified)

ii) Draw Rect: The drawRect() method display an outlined rectangle.


Syntax: void drawRect(int top,int left,int width,int height)
The upper-left corner of the Rectangle is at top and left. The dimension of the
Rectangle is specified by width and height.
Example: g.drawRect(10,10,60,50);

iii)Fill Oval: Drawing Ellipses and circles: To draw an Ellipses or circles


used fillOval() method can be used. It draws the Solid Ellipses and circles.
Syntax: void fillOval(int top, int left, int width, int height)
The filled ellipse is drawn within a bounding rectangle whose upper-left
corner is specified by top and left and whose width and height are specified
by width and height to draw filled circle, specify the same width and height
the following program draws several ellipses and circle.
Example: g.fillOval(10,10,50,50);

iv) Draw Arc(): It is used to draw arc.


Syntax:
void drawArc(int x, int y, int w, int h, int start_angle, int sweep_angle);
where x, y starting point, w & h are width and height of arc, and start_angle is
starting angle of arc, sweep_angle is degree around the arc
Example: g.drawArc(10, 10, 80, 40, 10, 90);
3 Attempt any four of the following: 4x4=16
a) Differentiate between array and Vector. 4
Ans: any 4
Array Vector Correct
An Array is a structure that holds The Vector is similar to array Points. 1
multiple values of same data type. which holds multiple values but Mark for
different data types. one point)
Array is a fixed-Length structure. The size of a vector can grow or
shrink as per the requirement.
Array is a data structure. Vector is a Class.
Array is primitive data type. Vector implements the List
interface.
Array is a static-memory Vector is a dynamic-memory
allocation. allocation.
No methods provided by Array Vector provides methods for
for doing operations on values. doing operations like adding,
deleting, inserting, etc…
Wrapper classes are not used. Wrapper classes are used in
vector.
Declaration of Array: Declaration of vector:
int a[]=new int[10]; Vector v=new Vector(4,5);
b) Write a program to calculating area and perimeter of rectangle. 4
Ans: import java.io.*; 4m for
import java.lang.*; Correct
class rect program
{ and logic
public static void main(String args[]) throws Exception
7
MAHARASHTRA STATE BOARD OF TECHNICAL EDUCATION
(Autonomous)
(ISO/IEC - 27001 - 2013 Certified)

{
DataInputStream dr=new DataInputStream(System.in);
int l,w;
System.out.println(“Enter length and width:”);
l=Integer.parseInt(dr.readLine());
w=Integer.parseInt(dr.readLine());
int a=l*w;
System.out.println(“Area is=”+a);
int p=2(l+w);
System.out.println(“Area is=”+p);
}
}
c) Explain fileinputstream class to read the content of a file. 4
Ans: Java FileInputStream class obtains input bytes from a file. It is used for 4m for
reading byte-oriented data (streams of raw bytes) such as image data, audio, proper
video etc. You can also read character-stream data. But, for reading streams explanation
of characters, it is recommended to use File Reader class.
Java FileInputStream class methods
Method Description
It is used to return the estimated number of bytes that
int available()
can be read from the input stream.
It is used to read the byte of data from the input
int read()
stream.
It is used to read up to b.length bytes of data from the
int read(byte[] b)
input stream.
int read(byte[] b, int It is used to read up to len bytes of data from the input
off, int len) stream.
It is used to skip over and discards x bytes of data
long skip(long x)
from the input stream.
FileChannel It is used to return the unique FileChannel object
getChannel() associated with the file input stream.
FileDescriptor
It is used to return the FileDescriptor object.
getFD()
protected void It is used to ensure that the close method is call when
finalize() there is no more reference to the file input stream.
void close() It is used to closes the stream.

Program for Reading contents from file:


import java.io.*;
public class f_demo
{
public static void main(String args[]) throws Exception
{
File f=new File(“c:/input.txt”);
DataInputStream dr=new DataInputStream(new FileInputStream(f));
while(dr.available() !=0)

8
MAHARASHTRA STATE BOARD OF TECHNICAL EDUCATION
(Autonomous)
(ISO/IEC - 27001 - 2013 Certified)

{
System.out.println(dr.readLine());
}
dr.close();
}
}
d) Explain applet life cycle with suitable diagram. 4
Ans: Java applet inherits features from the class Applet. Thus, whenever an applet 1m for
is created, it undergoes a series of changes from initialization to destruction. diagram
Various stages of an applet life cycle are depicted in the figure below: and
3 marks for
explanation

Initial State: When a new applet is born or created, it is activated by calling


init() method. At this stage, new objects to the applet are created, initial
values are set, images are loaded and the colors of the images are set. An
applet is initialized only once in its lifetime.
It's general form is:
public void init( )
//Action to be performed
}
Running State: An applet achieves the running state when the system calls
the start() method. This occurs as soon as the applet is initialized. An applet
may also start when it is in idle state. At that time, the start() method is
overridden.
It's general form is:
public void start( )
{
//Action to be performed
}
Idle State: An applet comes in idle state when its execution has been stopped
either implicitly or explicitly. An applet is implicitly stopped when we leave
the page containing the currently running applet. An applet is explicitly
stopped when we call stop() method to stop its execution.
It's general form is:
public void stope
{
//Action to be performed
}
Dead State: An applet is in dead state when it has been removed from the
9
MAHARASHTRA STATE BOARD OF TECHNICAL EDUCATION
(Autonomous)
(ISO/IEC - 27001 - 2013 Certified)

memory. This can be done by using destroy() method.

It's general form is:


public void destroy( )
{
//Action to be performed
}
Display State (paint ()): Apart from the above stages, Java applet also
possess paint( ) method. The paint() method is used for applet display on the
screen. This method helps in drawing, writing and creating colored
backgrounds of the applet. It takes an argument of the graphics class. To use
The graphics, it imports the package java.awt.Graphics
e) What is use of super and final with respect to inheritance. 4
Ans: Super Keyword: The super keyword in Java is a reference variable which is 2m for
used to refer immediate parent class object. Whenever you create the instance Use of
of subclass, an instance of parent class is created implicitly which is referred super
by super reference variable. And
Usage of Java super Keyword 2m for
 super can be used to refer immediate parent class instance variable. Final
 super can be used to invoke immediate parent class method. keyword
 super() can be used to invoke immediate parent class constructor.
Example:
class A
{
int i;
A(int a, iont b)
{
i=a+b;
}
void add()
{
System.out.println(“sum of a and b=”+i);
}
}
class B extends A
{
int j;
B(int a,int b, int c)
{
super(a,b);
j=a+b+c;
}
void add()
{
super.add();
System.out.println(“Sum of a, b and c is:” +j);
}
}

10
MAHARASHTRA STATE BOARD OF TECHNICAL EDUCATION
(Autonomous)
(ISO/IEC - 27001 - 2013 Certified)

Final Keyword: A parameter to a function can be declared with the keyword


“final”.
This indicates that the parameter cannot be modified in the function.
The final keyword can allow you to make a variable constant.

Example:
Final Variable: The final variable can be assigned only once. The value of a
final variable can never be changed.
final float PI=3.14;

Final Methods: A final method cannot be overridden. Which means even


though a sub class can call the final method of parent class without any issues
but it cannot override it.
Example:
class XYZ
{
final void demo(){
System.out.println("XYZ Class Method");
}
}

class ABC extends XYZ{


void demo()
{
System.out.println("ABC Class Method");
}

public static void main(String args[])


{
ABC obj= new ABC();
obj.demo();
}
}

The above program would throw a compilation error, however we can use the
parent class final method in sub class without any issues.
class XYZ
{
final void demo(){
System.out.println("XYZ Class Method");
}
}

class ABC extends XYZ


{
public static void main(String args[])
{
ABC obj= new ABC();
11
MAHARASHTRA STATE BOARD OF TECHNICAL EDUCATION
(Autonomous)
(ISO/IEC - 27001 - 2013 Certified)

obj.demo();
}
}
Output:
XYZ Class Method

final class: We cannot extend a final class. Consider the below example:
final class XYZ
{
}

class ABC extends XYZ


{
void demo()
{
System.out.println("My Method");
}
public static void main(String args[])
{
ABC obj= new ABC();
obj.demo();
}
}
Output:
The type ABC cannot subclass the final class XYZ
4 A Attempt any THREE of following. 3x4=12
a) Explain type casting with suitable example. 4
Ans: In Java, type conversion is performed automatically when the type of the 4m for
expression on the right hand side of an assignment operation can be safely proper
promoted to the type of the variable on the left hand side of the assignment. explanation
Assigning a value of one type to a variable of another type is known as Type
Casting.

Every expression has a type that is determined by the components of the


expression.
Example:
double x;
int y=2;
float z=2.2f;
x=y+z;
12
MAHARASHTRA STATE BOARD OF TECHNICAL EDUCATION
(Autonomous)
(ISO/IEC - 27001 - 2013 Certified)

The expression to the right of the “=“ operator is solved first and the result is
stored in x. The int value is automatically promoted to the higher data type
float (float has a larger range than int) and then, the expression is evaluated.
The resulting expression is of float data type. This value is then assigned to x,
which is a double (larger range than float) and therefore, the result is a
double.
Java automatically promotes values to a higher data type, to prevent any loss
of information.
Example: int x=5.5/2
In above expression the right evaluates to a decimal value and the expression
on left is an integer and cannot hold a fraction. Compiler will give you
following error.
“Incompatible type for declaration, Explicit vast needed to convert double to
int.”
This is because data can be lost when it is converted from a higher data type
to a lower data type. The compiler requires that you typecast the assignment.
Solution: int x=(int)5.5/2;
b) Explain following clause w.r.t. exception handling 4
i) try ii) catch iii) throw iv) finally
Ans: try: Program statements that you want to monitor for exceptions are 1m for each
contained within a try block. If an exception occurs within the try block, it is term
thrown.
Syntax: try
{
// block of code to monitor for errors
}

catch: Your code can catch this exception (using catch) and handle it in
some rational manner. System-generated exceptions are automatically thrown
by the Java runtime system. A catch block immediately follows the try block.
The catch block can have one or more statements that are necessary to
process the exception.
Syntax: catch (ExceptionType1 exOb)
{
// exception handler for ExceptionType1
}

throw: It is mainly used to throw an instance of user defined exception.


Example:
throw new myException(“Invalid number”);
assuming myException as a user defined exception

finally: finally block is a block that is used to execute important code such as
closing connection, stream etc. Java finally block is always executed whether
exception is handled or not. Java finally block follows try or catch block.
Syntax:
finally
{
// block of code to be executed before try block ends
13
MAHARASHTRA STATE BOARD OF TECHNICAL EDUCATION
(Autonomous)
(ISO/IEC - 27001 - 2013 Certified)

c) Write a program to print sum of even numbers from 1 to 20. 4


Ans: public class sum_of_even 4m for
{ Correct
public static void main(String[] args) program
{ and logic
int sum=0;
for (int i=0; i<=20;i=i+2)
{
sum = sum+i;
}
System.out.println("Sum of these numbers: "+sum);
}
}
Output:
Sum of even numbers: 110
d) Differentiate between Applet and Application. 4
Ans: any 4
Applet Application Correct
Applets run in web pages. Applications run on stand-alone Points. 1
systems. Mark for
Applets are not full featured Applications are full featured one point)
application programs. programs.
Applets are the small programs. Applications are larger programs.
Applet starts execution with its Application starts execution with its
init(). main ().
Parameters to the applet are given in Parameters to the application are
the HTML file. given at the command prompt.
Applet cannot access the local file Application can access the local file
system and resources. system and resources.
Applets are event driven Applications are control driven.
4 B Attempt any ONE of the following. 1x6=6
a) Write a program to create an applet for displaying circle, rectangle and 6
triangle one below the other and filled them with red, green and yellow
respectively.
import java.awt.*; To display
import java.applet.*; circle with
/* <applet code="test.class" width=200 height=200> red
</applet> */ color=2m
To display
public class test extends Applet rectangle
{ with green
public void paint(Graphics g) color=2m
{ To display
triangle
g.setColor(Color.RED); with yellow
g.fillOval(80,50,50,50); color=2m
14
MAHARASHTRA STATE BOARD OF TECHNICAL EDUCATION
(Autonomous)
(ISO/IEC - 27001 - 2013 Certified)

g.setColor(Color.GREEN);
g.fillRect(50,120,100,50);

g.setColor(Color.YELLOW);
int x1[]={50, 100, 150, 50};
int y1[]={250, 200, 250, 250};
int n1=4;
g.fillPolygon(x1, y1, n1);

}
}

Output:

b) Describe following methods related to vector addElement(), 6


removeElement() and insertElementAt().
Ans: addElement(): Adds the specified component to the end of the vector, 2m for each
increasing its size by one. method
Syntax: void addElement(Object obj)
Example:
v.addElement("Apple");
v.addElement(10);

removeElement():Removes the specified component from the vector.


Decreasing the size of vector.
Syntax: removeElement(Object obj)
Example: v.removeElement(“Apple”);

insertElementAt():Inserts the item at nth position.


Syntax: insertElementAt(item,n)
Example: v.insertElementAt(“Orange”,3);
5 Attempt any two of the following: 2x8=16
a) Explain following terms: i) Thread priority ii) Types of Exception 8
Ans: (i) Thread Priority: In java, each thread is assigned a priority which affects Explanation
the order in which it is scheduled for running. Threads of same priority are of thread
15
MAHARASHTRA STATE BOARD OF TECHNICAL EDUCATION
(Autonomous)
(ISO/IEC - 27001 - 2013 Certified)

given equal treatment by the java scheduler. The Thread class defines several priority=4m
priority constants as Explanation
MIN_PRIORITY=1 of Types of
NORM_PRIORITY=5 Exception=
MAX_PRIORITY=10 4m
Thread priorities can take values from 1 to 10.
To set the priority Thread class provides setPriority() method as
Thread.setPriority(priority value);
Eg: If t1 is a Thread class object then
T1.setPriority(Thread.MAX_PRIORITY);
To see the priority value of a thread the method available is getPrioriy() as
int Thread.getPriority();
eg : int p= Thread.getPriority();

(ii) Types of Exceptions: Java exceptions can be classified as Built-in


exceptions and user defined exceptions
1) Built-in Exceptions: Built-in exceptions are the exceptions which are
available in Java libraries. These exceptions are suitable to explain certain
error situations. Below is the list of important built-in exceptions in Java.
Arithmetic Exception: It is thrown when an exceptional condition has
occurred in an arithmetic operation.
ArrayIndexOutOfBoundException: It is thrown to indicate that an array
has been accessed with an illegal index. The index is either negative or
greater than or equal to the size of the array.
ClassNotFoundException: This Exception is raised when we try to access a
class whose definition is not found
FileNotFoundException: This Exception is raised when a file is not
accessible or does not open.
IOException: It is thrown when an input-output operation failed or
interrupted

2) User-Defined Exceptions: Sometimes, the built-in exceptions in Java are


not able to describe a certain situation. In such cases, user can also create
exceptions which are called ‘user-defined Exceptions’.
Following steps are followed for the creation of user-defined Exception.
The user should create an exception class as a subclass of Exception class.
Since all the exceptions are subclasses of Exception class, the user should
also make his class a subclass of it. This is done as:
class MyException extends Exception
We can create a parameterized constructor with a string as a parameter.We
can use this to store exception details.
MyException(String str)
{
super(str);
}
To raise exception of user-defined type, we need to create an object to his
exception class and throw it using throw clause, as
throw new MyException(“Error message here….”);
b) Write a program to create two threads.so one thread will print even 8
16
MAHARASHTRA STATE BOARD OF TECHNICAL EDUCATION
(Autonomous)
(ISO/IEC - 27001 - 2013 Certified)

numbers between 1 to 10 whereas other will print odd number between


11 to 20.
Ans: class eventhread extends Thread Correct
{ Logic : 4 M,
public void run() Correct
{ syntaxes : 4
for(int i=1;i<=10;i=i+2) M
{
System.out.println("Even no="+ i);
}
}
}
class oddthread extends Thread
{
public void run()
{
for(int i=11;i<=20;i=i+2)
{
System.out.println("Odd no="+ i);
}
}
}
class threadtest
{
public static void main(String args[])
{
eventhread e1= new eventhread();
oddthread o1= new oddthread();
e1.start();
o1.start();
}
}
Output:
E:\java\bin>javac threadtest.java
E:\java\bin>java threadtest
Odd no=11
Even no=2
Odd no=13
Odd no=15
Even no=4
Even no=6
Odd no=17
Odd no=19
Even no=8
Even no=10
c) How can parameters be passed to an applet? Write an applet to accept 8
username in the parameter and print “Hello<username> “.
Ans: User defined parameters can be passed using <Param> tag. Parameter
Parameters are passed to an applet when it is loaded. We can call passing
17
MAHARASHTRA STATE BOARD OF TECHNICAL EDUCATION
(Autonomous)
(ISO/IEC - 27001 - 2013 Certified)

getParameter() method to collect the value of parameter sent from <param> explanation
tag to applet. getParameter() takes one String argument representing name of : 2M,
the parameter and returns the value of the same. In program
Syntax: : correct
<Param name=”variable-name” value=”value of the variable> logic 3M,
String getParameter(“variable-name”); correct
Program: syntaxes :
import java.awt.*; 3M
import java.applet.*;
public class myapplet extends Applet
{
String uname="";
public void paint(Graphics g)
{
uname=getParameter("username");
g.drawString("Hello "+uname,100,100);
}
}
/*<applet code=myapplet height=300 width=300>
<param name="username" value="ABC">
</applet>*/
Output:

6 Attempt any four of the following 4x4=16


a) Demonstrate the concept of method overriding with example. 4
Ans: Method overriding: In a class hierarchy, when method in a subclass has Explanation
same name, type, & parameter list as a method in superclass then the method of method
is said to override the method in superclass. When an overridden method is overriding:
called from within a subclass it will always refer to the version of method 2M, correct
defined by subclass. The version of method from superclass will be hidden. example:
Example: 2M
class overridetest
{
int x,y;
overridetest(int a,int b)
{
x=a;
y=b;
}
18
MAHARASHTRA STATE BOARD OF TECHNICAL EDUCATION
(Autonomous)
(ISO/IEC - 27001 - 2013 Certified)

void display()
{
System.out.println("x="+x);
System.out.println("y="+y);
}
}
class test extends overridetest
{
int z;
test(int a,int b,int c)
{
super(a,b);
z=c;
}
void display() //method overridden
{
super.display(); //call to super class display()
System.out.println("z="+z);
}
public static void main(String args[])
{
test t= new test(4,5,6);
t.display();
}
}
b) Write any two methods of file and file input stream class each. 4
Ans: File class methods: Any two
boolean canExecute() : Tests whether the application can execute the file methods
denoted by this abstract pathname. from file
boolean canRead() : Tests whether the application can read the file denoted class=2m
by this abstract pathname. Any two
boolean canWrite() : Tests whether the application can modify the file methods
denoted by this abstract pathname. from
int compareTo(File pathname) : Compares two abstract pathnames fileinput
lexicographically. stream=2m
boolean createNewFile() : Atomically creates a new, empty file named by
this abstract pathname .
static File createTempFile(String prefix, String suffix) : Creates an empty
file in the default temporary-file directory.
boolean delete() : Deletes the file or directory denoted by this abstract
pathname.
boolean equals(Object obj) : Tests this abstract pathname for equality with
the given object.
boolean exists() : Tests whether the file or directory denoted by this abstract
pathname exists.
String getAbsolutePath() : Returns the absolute pathname string of this
abstract pathname.
long getFreeSpace() : Returns the number of unallocated bytes in the
partition
19
MAHARASHTRA STATE BOARD OF TECHNICAL EDUCATION
(Autonomous)
(ISO/IEC - 27001 - 2013 Certified)

String getName() : Returns the name of the file or directory denoted by this
abstract pathname.
String getParent() : Returns the pathname string of this abstract pathname’s
parent.
File getParentFile() : Returns the abstract pathname of this abstract
pathname’s parent.
String getPath() : Converts this abstract pathname into a pathname string.
boolean isDirectory() : Tests whether the file denoted by this pathname is a
directory.
boolean isFile() : Tests whether the file denoted by this abstract pathname is
a normal file.
boolean isHidden() : Tests whether the file named by this abstract pathname
is a hidden file.
long length() : Returns the length of the file denoted by this abstract
pathname.
String[] list() : Returns an array of strings naming the files and directories in
the directory .
File[] listFiles() : Returns an array of abstract pathnames denoting the files in
the directory.
boolean mkdir() : Creates the directory named by this abstract pathname.
boolean renameTo(File dest) : Renames the file denoted by this abstract
pathname.
boolean setExecutable(boolean executable) : A convenience method to set
the owner’s execute permission.
boolean setReadable(boolean readable) : A convenience method to set the
owner’s read permission.
boolean setReadable(boolean readable, boolean ownerOnly) : Sets the
owner’s or everybody’s read permission.
boolean setReadOnly() : Marks the file or directory named so that only read
operations are allowed.
boolean setWritable(boolean writable) : A convenience method to set the
owner’s write permission.
String toString() : Returns the pathname string of this abstract pathname.
URI toURI() : Constructs a file URI that represents this abstract pathname.

FileInputStream class methods :


int available(): It is used to return the estimated number of bytes that can be
read from the input stream.
int read():It is used to read the byte of data from the input stream.
int read(byte[] b): It is used to read up to b.length bytes of data from the
input stream.
int read(byte[] b, int off, int len): It is used to read up to len bytes of data
from the inpu stream.
long skip(long x) :It is used to skip over and discards x bytes of data from
the input stream.
FileChannel getChannel() : It is used to return the unique FileChannel
object associated with the file input stream.
FileDescriptor getFD() : It is used to return the FileDescriptor object.
protected void finalize() : It is used to ensure that the close method is call
20
MAHARASHTRA STATE BOARD OF TECHNICAL EDUCATION
(Autonomous)
(ISO/IEC - 27001 - 2013 Certified)

when there is no more reference to the file input stream.


void close(): It is used to closes the stream.
c) Design an applet which displays rectangle filled with blue colour and 4
display message as “MSBTE EXAM” in red colour below it.
Ans: import java.awt.*; Correct
import java.applet.*; logic: 2M,
public class myapplet extends Applet Correct
{ syntaxes:
public void paint(Graphics g) 2M
{
g.setColor(Color.blue);
g.fillRect(50,50,100,50);
g.setColor(Color.red);
g.drawString("MSBTE EXAM",60,120);
}
}

/*<applet code=myapplet height=300 width=300>


</applet>*/

Output:

d) Write a program to demonstrate multiple inheritances. 4


Ans: interface sports Program
{ logic
int sports_weightage=5; showing
void calc_total(); multiple
} inheritance
: 2M,
class person correct
{ syntaxes :
String name; 2M
String category;
person(String nm,String c)
{
name=nm;
category=c;
}
21
MAHARASHTRA STATE BOARD OF TECHNICAL EDUCATION
(Autonomous)
(ISO/IEC - 27001 - 2013 Certified)

}
class student extends person implements sports
{
int marks1,marks2;
student(String n,String c, int m1,int m2)
{
super(n,c);
marks1=m1;
marks2=m2;
}
public void calc_total()
{
int total;
if (category.equals("sportsman"))
total=marks1+marks2+sports_weightage;
else
total=marks1+marks2;
System.out.println("Name="+name);
System.out.println("Category ="+category);
System.out.println("Marks1="+marks1);
System.out.println("Marks2="+marks2);
System.out.println("Total="+total);
}
public static void main(String args[])
{
student s1=new student("ABC","sportsman",67,78);
student s2= new student("PQR","non-sportsman",67,78);
s1.calc_total();
s2.calc_total();
}
}
e) Write a program to find greater number among two numbers using 4
conditional operator.
Ans: class greater correct logic
{ 1 M, correct
public static void main(String args[]) use of
{ conditional
int a,b; operator
int bignum; :2M, other
a=100; correct
b=150; syntaxes :
bignum=(a>b?a:b); //conditional operator 1M
System.out.println("Greater number between "+a+ " and "+b +" is =
"+bignum);
}
}
Output:
E:\java\bin>javac greater.java
E:\java\bin>java greater
22
MAHARASHTRA STATE BOARD OF TECHNICAL EDUCATION
(Autonomous)
(ISO/IEC - 27001 - 2013 Certified)

Greater number between 100 and 150 is = 150

23

You might also like