Lab Exercises
Lab Exercises
2.5.2 5
45
10001
345
1000001
2345
100000001 12345
012345
2.5.3 1
12
123
1234
12345
2.6. Write a program to the find the following
2.6.1 Prime number checking
2.6.2 Sum of digit
2.7 Write a program to arrange the numbers in ascending order.
2.8 Write a program to calculate the roots of Quadratic equations.
2.9 Write a program for calculating Matrix Operations.
2.9.1 Addition.
2.9.2 Multiplication.
Lab Unit 3 (2 Hrs Real Time)
3.1 Write a program to create a room class, the attributes of this class is
roomno, roomtype, roomarea and ACmachine. In this class the member
functions are setdata and displaydata.
Lab Exercises
Methods
int y)
8.2 Create class Number with only one private instance variable as a double
primitive type. To include the following methods (include respective
constructors) isZero( ), isPositive(), isNegative( ), isOdd( ), isEven( ),
isPrime(), isAmstrong() the above methods return boolean primitive type.
getFactorial(), getSqrt(), getSqr(), sumDigits(), getReverse() the above
methods return double primitive type. void listFactor(), void dispBinary().
8.3 Write a program to create a package named mypack and import it in circle
class.
8.4 Write a program to create a package named pl, and implement this
package in ex1 class.
Lab 9 (2 Hrs Real Time)
9.1 Write a program to create automatic type conversions apply to overriding.
9.2 Create class box and box3d. box3d is extended class of box. The above
two classes going to pull fill following requirement
Include constructor.
set value of length, breadth, height
Find out area and volume.
Note: Base class and sub classes have respective methods and instance
variables.
9.3 Write a program using vector class.
Object Oriented Programming with Java
Centre for Information Technology and Engineering, Manonmaniam Sundaranar
University 6
Lab 10 (2 Hrs Real Time)
10.1 Write a program for example of try and catch block. In this check
whether the given array size is negative or not.
10.2 Write a program for example of multiple catch statements occurring in a
program.
10.3 Write a program to illustrate sub class exception precedence over base
class.
10.4 Write a program to illustrate usage of try/catch with finally clause.
14.2 Write a program to create two threads. In this class we have one
constructor used to start the threadand run it. Check whether these two
threads are run are not.
Lab 15 (2 Hrs Real Time)
15.1 Create a multithreaded program by creating a subclass of Thread and
then creating, initializing, and staring two Thread objects from your
class. The threads will execute concurrently and display Java is hot,
aromatic, and invigorating to the console window.
15.2 Create a multithreaded program as in the previous exercise by creating
the MyThread subclass of Thread. But create threads as objects of the
class MyClass, which is not a subclass of Thread. MyClass will
implement the runnable interface and objects of MyClass will be
executed as threads by passing them as arguments to the Thread
constructor.
Object Oriented Programming with Java
Centre for Information Technology and Engineering, Manonmaniam Sundaranar
University 8
Lab 16 (2 Hrs Real Time)
16.1 Write a program for inventory problem in this to illustrates the usage of
synchronized keyword.
16.2 Write a program for interthread communication process. In this they
have three classes consumer, producer and stock.
Producer addStock() Stock getStock() Consumer
Notify() wait()
16.3 Write a program to show how synchronized methods and objects
monitors are used to coordinate access to a common object by multiple
threads. Clue use first program of this section for use will synchronized
methods.
16.4 Write a complex program to illustrate how the thread priorities? Imagine
that the first thread has just begun to run, even before it has a chance to
do anything. Now comes the higher priority thread that wants to run as
well. Now the higher priority thread has to do its work before the first
thread starts.
}
}
Ex - 2.1.4
Relational Operators:
class Relational
{
public static void main (String args [ ] )
{
int x = 7, y = 11, z = 11; System.out.println (" x=" + x); System.out.println
("y =" + y); System.out.println ("x < y =" + ( x < y ) ); System.out.println ("
x > z =" + (x > z) ); System.out.println (" x <= z =" + (y <= z) );
System.out.println (" x >= y =" + (x >= y ) ); System.out.println ( " y == z ="
+ (y ==z) ); System.out.println (" x != z =" + (x != z) ); }
}
Ex - 2.1.5
Bitwise Operator :
class Bitwise
{
public static void main ( String args [ ] )
{
int x = 5, y = 6; System.out.println (" x =" +x); System.out.println (" y =" +
y ); System.out.println (" x & y =" + ( x & y) ) ; System.out.println (" x | y ="
+ ( x | y ) ); System.out.println (" x ^ y =" +( x ^ y) ); }
}
Ex - 2.1.6
Conditional Operators
Object Oriented Programming with Java
Centre for Information Technology and Engineering, Manonmaniam Sundaranar
University 4
class Conditional
{
public static void main (String args [ ] )
{
int x = 0; boolean isEven = false;
isEven ? 4: 7;
break;
default: System.out.println ("Unknown Value");
}
}
Lab Solutions
Centre for Information Technology and Engineering, Manonmaniam Sundaranar
University 5
}
Ex 2.2.3
class ForTest
{
public static void main (String args [ ] )
{
int i= 0;
int sum = 0;
for( i = 0; i <= 10; i++)
sum += i;
System.out.println ("The sum of first 10 Nos =" + sum );
}
}
Ex 2.2.4
class WhileTest
{
public static void main (String args [ ] )
{
int i=1;
while (i<=5)
{
System.out.println ("i =" + i); i++;
}
}
}
Ex 2.2.5
class BreakLoop
{
public static void main (String args [ ])
{
int i= 0;
do {
System.out.println ("Im stuck !" ) ;
i++;
if (i > 5)
break;
} while (true); }
}
Ex 2.3.1
Object Oriented Programming with Java
Centre for Information Technology and Engineering, Manonmaniam Sundaranar
University 6
class Length
{
public static void main (String args [ ] )
{
int a1[ ] = new int [10];
int a2 [ ] = { 3,5,7, 1, 8, 99 , 44, -10 };
int a3 [ ] = { 4, 3, 2, 1 };
System.out.println ("Length of a1 is" + a1.length);
System.out.println (" Length of a2 is" + a2.length);
System.out.println ("Length of a3 is" + a3. length);
}
}
Ex 2.3.2
// Demonstrate a one-dimensional array.
class Array
{
public static void main (String args [ ] )
{
int num[];
int size =5;
num = new int [size];
num [0] = 10;
num [1] = 20;
num[2] = 30;
num [3] = 40;
num [4]= 50;
for (int i =0; i<size; i+ +)
System.out.println ("num [" + i +" ] =" + num [ i ]);
}
}
Ex 2.3.3
// ACDemo - Using arraycopy ( )
class ArrayCopy
{
static char a [ ] = { 'H', 'E', 'L', 'L', 'O'} ;
static char b [ ] = { 'W', 'O', 'R', 'L', 'D'}; public static void main ( String args [ ])
{
System.out.print ("Before ArrayCopy a - - >" );
System.out.println (a);
System.out.print ("Before ArrayCopy b - - >" );
System.out.println (b);
Lab Solutions
Centre for Information Technology and Engineering, Manonmaniam Sundaranar
University 7
System.arraycopy (a, 0, b, 0 ,a.length);
System.out.print ("After ArrayCopy a - - >" );
System.out.print (a);
System.out.print ("After ArrayCopy b - ->" );
System.out.println (b); }
}
Ex 2.3.4
// Demonstrate a two-dimensional array.
class TwoDArray
{
public static void main (String args[])
{
int twoD[][] = new int[3][3];
int i, j , k = 0;
for (i=0; i<3; i++)
for (j=0; j<3; j++)
{
twoD[i][j] = k;
k++;
}
for (i=0; i< 3; i++)
{
for ( j= 0; j < 3; j++) System.out.print (twoD[i][j] + " ");
System.out.println();
}
}
}
Ex 2.4.1
public class Summation
{
public static void main(String a[])
{
int sum = 0;
int invalid = 0;
for(int I=0; I<a.length;I++)
{
try {
}
sum += Integer.parseInt(a[I]);
catch(NumberFormatException e) {
invalid++;
Object Oriented Programming with Java
Centre for Information Technology and Engineering, Manonmaniam Sundaranar
University 8
} }
System.out.println(Total no. of arguments : + a.length);
System.out.println(Invalid Integers: + invalid);
System.out.println(Sum :+sum);
}
}
Ex 2.4.2
class cmdline
{
public static void main (String args [ ])
{
for ( int i=0 ; i < args.length ; i++)
System.out.println (args [ i ]);
}
}
Ex 2.5.1
public class BinaryTriangle
{
public static void main (String arg [ ] )
{
String k = 1, l = , s = 1;
int m = 0;
int n = 5; //* if necessary change the value of n** //
for (int i = 0; i < n; i++)
{
for (int j = 1; j < m; j++)
{
l+= 0;
}
System.out.println (k + l + s + \n);
l = ;
m += 2;
}
}
}
Ex 2.5.2
public class NumberReverseTriangle
{
public static void main (String arg[ ])
{
String k= ;
Lab Solutions
Centre for Information Technology and Engineering, Manonmaniam Sundaranar
University 9
int n = 5; /* if necessary change the value of n* */
for (int i = 5; i >= 0; i--)
{
k = i + + k;
System.out.println (k + \n);
}
}
}
Ex 2.5.3
public class NumberTriangle
{
public static void main (String arg [ ])
{
String k = ;
int n = 6; /* if necessary change the value of n * */
for ( int i = 1; i <= n; i++)
{
k += i + ;
System.out.println (k + \n);
}
}
}
Ex - 2.6.1
class sumdig
{
public static void main (String args [ ] )
{
int i, s;
i = 927489;
s=0;
System.out.println (i); while (i>10) {
s += i%10;
i/=10;
}
s += i;
System.out.println (the sum of the digits is : + s); }
}
Ex 2.6.2
import java.lang.*;
Object Oriented Programming with Java
Centre for Information Technology and Engineering, Manonmaniam Sundaranar
University 10
class prime
{
public static void main (String args [ ])
{
int i, j, n, lastn; double a;
boolean flag;
for (i=0;i<1000;i++)
{
a = i;
a = Math.sqrt (a);
lastn = (int)a;
flag =true;
for (j=2;j<=lastn; j+ +)
{
if(i != j)
{
if(i % j = =0)
{
flag = false;
break;
}
}
}
if (flag) System.out.println (\n + i );
}
}
}
Ex 2.7
class exarray
{
public static void main (String args [ ] )
{
int [ ] arr = {234,6,846,85,96,198,545,12,60,34,4,87,7,1};
int i, j, l, temp;
l= arr.length;
for (i=0;i<l-1;i++)
{
for (j=i+1;j<l;j++)
{
temp = arr [i]; arr[i] = arr[j]; arr[j] = temp; }
}
for (i=0;i<l;i++)
{
System.out.println (arr[i]);
Lab Solutions
Centre for Information Technology and Engineering, Manonmaniam Sundaranar
University 11
}
}
}
Ex 2.8
public class Quad
{
double a, b, c;
Quad(double a, double b, double c)
{
a = a;
b = b;
c = c;
}
void root()
{
double r1, r2, d, rp, ri;
d= a* a 4 * a*c;
if (d<0)
{
rp = -b/(2.0 * a);
ri = Math.sqrt(Math.abs(d))/(2.0*a);
System.out.println( The roots are complex conjugates);
System.out.println(Roots1 = + rp + i + ri);
System.out.println(Roots2 = + rp + i+ ri);
}
if (d==0)
{
r1= -b/(2.0*a);
System.out.println(The roots are real and equal);
System.out.println(Root = + r1);
}
if (d>0)
{
r1 = (-b +Math.sqrt(d))/(2.0*a);
r2 = (-b-Math.sqrt(d))/(2.0*a);
System.out.println(Root1 = + r1 + \n Root2 = + r2);
}
}
public static void main(String a[])
{
Quad q1,q2,q3;
q1 = new Quad(1.0, -5.0, 6.0);
q2 = new Quad(4.0, -20.0, 25.0);
q3 = new Quad(2.0, 1.0, 2.0);
q1.root();
q2.root();
q3.root();
}
Object Oriented Programming with Java
Centre for Information Technology and Engineering, Manonmaniam Sundaranar
University 12
}
Ex 2.9.1
public class MatAdd
{
public static void main(String a1[])
{
int I, j, k;
int a[][]={ {4,7,9,8,3},{2,4,7,8,1},{1,1,8,1,2},{0,0,1,0,4}};
{
System.out.println(\n);
for(j=0;j<4;j++)
System.out.print(\b + c[I][j]+ );
}
Lab Solutions
Centre for Information Technology and Engineering, Manonmaniam Sundaranar
University 13
}
}
Lab - 3 (2 hrs Real time)
Ex - 3.1
class Room
{
int roomNo;
String roomType;
float roomArea;
boolean acMachine;
void setData(int rno, String rt, float area, boolean ac)
{
roomNo = rno;
roomType = rt; roomArea = area; acMachine = ac; }
void displayData()
{
System.out.println(The room #. Is + roomNo); System.out.println (The
room Type is + roomType); System.out.println (The room area is +
roomArea); String s = (acMachine) ? yes : no ; System.out.println (The
A/c Machine needed + s);
}
public static void main(String arg[])
{
Room room1 = new Room ( );
room1. setData (101, Deluxe, 240.0f, true);
room1.displayData ( );
}
}
Ex 3.2
class SimpleObject
{
SimpleObject()
{
System.out.println (No argument Constructor);
}
SimpleObject(int a)
{
Object Oriented Programming with Java
Centre for Information Technology and Engineering, Manonmaniam Sundaranar
University 14
System.out.println (One argument Constructor);
}
}
public class Constructor
{
public static void main(String arg[])
{
new SimpleObject();
new SimpleObject(100);
}
}
Ex 3.3
// simple types are passed by value
class Test
{
void meth(int i, int j)
{
i *=2;
j /=2;
}
}
class CallByValue
{
public static void main (String args[])
{
Test ob = new Test();
int a =15, b = 20;
System.out.println (Before call :a = + a +b = + b);
ob.meth (a, b );
System.out.println (After call :a = + a+ b = + b );
}
}
// simple types are passed by value
class Test
{
int a, b;
Test(int i, int j)
{
a = i;
b = j;
}
// pass an object
void meth(Test o)
Lab Solutions
Centre for Information Technology and Engineering, Manonmaniam Sundaranar
University 15
{
o.a *=2;
o.b /= 2;
}
}
class CallByRef
{
public static void (String args[])
{
Test ob = new Test(15,20);
System.out.println(Before call :ob.a = +ob.a+ ob.b +ob.b);
ob.meth (ob);
System.out.println(After call :ob.a = +ob.a+ ob.b + ob.b);
}
}
Ex 3.4
class Point {
int x;
int y;
point ( int x, int y)
{
x = x;
y = y;
}
void displayPoint ( ) {
System.out.println (The x value is + x);
System.out.println (The y value is + y);
}
public static void main ( String arg [ ] ) {
Point point = new point (10,20);
point. displayPoint ( );
}
}
// using this keyword
class ThisReturn
{
private int i = 0;
ThisReturn increment()
{
i++;
return this ;
}
void print()
Object Oriented Programming with Java
Centre for Information Technology and Engineering, Manonmaniam Sundaranar
University 16
{
System.out.println (The i value is + i);
}
public static void main (String arg[])
{
ThisReturn tr = new ThisReturn();
tr.increment().increment().increment().increment().print();
}
}
Lab 4 (2 Hrs Real Time)
Ex 4.1
// Demonstrate static variable , methods, and blocks.
class UseStatic
{
static int a=3;
static int b;
static void meth(int x)
{
System.out.println (x = +x);
System.out.println (a = +a);
System.out.println (b = + b);
}
static
{
System.out.println (Static block Initialized);
b = a * 4;
}
public static void main (String args [ ])
{
meth (42);
}
}
// Using Method
class StaticDemo
{
static int a = 42;
static int b = 99;
static void callme()
{
System.out.println (a = + a);
}
}
class StaticByName
{
public static void main( String args[])
Lab Solutions
Centre for Information Technology and Engineering, Manonmaniam Sundaranar
University 17
{
StaticDemo.callme();
System.out.println (b = + StaticDemo.b);
}
}
Ex 4.2
class House
{
Room r;
void createHouse()
{
r = new Room();
}
void displayHouse()
{
r.displayData();
}
public static void main (String args[])
{
House h = new House();
h.createHouse();
h.displayHouse();
}
}
Ex 4.3
// a simple example of inheritance
class A
{
int i, j;
void showij()
{
System.out.println ( i and j: + i + + j );
}
}
class B extends A
{
int k;
void showk()
{
System.out.println ( K: + k);
}
void sum()
{
Object Oriented Programming with Java
Centre for Information Technology and Engineering, Manonmaniam Sundaranar
University 18
System.out.println ( i + j + k: + ( i + j + k ) );
}
}
class Inherit
{
public static void main (String args[])
{
A superOb = new A();
B subOb = new B();
// the superclass may be used by itself
superOb.i = 10;
superOb.j = 20;
System.out.println(Contents of superOb:);
super Ob.showij() ;
System.out.println ( );
//the subclass has access to all public members of its superclass
subOb. i = 1;
subOb. j = 2;
subOb. k = 3;
System.out.println (Contents of supOb: );
subOb.showij ( ) ;
subOb.showk ( );
System.out.println ( );
System.out.println (Sum of i, j and k in subob: );
subOb.sum ( );
}
}
Ex 4.4
// method overriding
class A
{
int i, j;
A()
{
i = 0;
j = 0;
}
A(int a, int b)
{
i = a;
j = b;
}
void show()
{
Lab Solutions
Centre for Information Technology and Engineering, Manonmaniam Sundaranar
University 19
System.out.println (i and j : + i + + j);
}
}
class B extends A
{
int k;
B()
{
i = 0;
j = 0;
k = 0;
}
B(int a, int b, int c)
{
i = a;
j = b;
k = c;
}
void show()
{
System.out.println ( i and j : + i + + j );
System.out.println ( k: + k);
}
}
class Override
{
public static void main (String args[])
{
B subob = new B( 1,2,3);
subob.show() ;
}
}
Ex 4.5
// method overriding
class A
{
int i, j;
A()
{
i = 0;
j = 0;
}
A(int a, int b)
{
i = a;
j=b;
Object Oriented Programming with Java
}
}
Lab 5 (2 hrs Real Time)
Ex 5.1
class Shape
{
void draw()
{
System.out.println(Shape draw());
}
void erase()
Lab Solutions
Centre for Information Technology and Engineering, Manonmaniam Sundaranar
University 21
{
System.out.println ( Shape erase());
}
}
class Circle extends Shape
{
void draw()
{
System.out.println (Circle draw());
}
void erase()
{
System.out.println (Circle erase());
}
}
class Triangle extends Shape
{
void draw()
{
System.out.println(Triangle erase());
}
}
class Square extends Shape
{
void draw()
{
System.out.println (Square draw());
}
void erase()
{
System.out.println (Square erase());
}
}
public class Shapes
{
public static Shape randshape()
{
switch((int)(Math.random()*3))
{
case 0: return new Circle();
case 1: return new Square();
case 2: return new Triangle();
default : System.out.println(default);
return new Shape();
}
}
public static void main (String arg[])
{
Shape s[] = new Shape[9];
for(int i = 0;i< s.length; i++)
Object Oriented Programming with Java
Ex 5.3
abstract class debuggable{
abstract void dump()
{
System.out.println("debuggable error: no dump() defined for the
class");
}
}
class X extends debuggable{
private int a,b,c;
public:
X( int aa =0,int bb=0,int cc=0)
{
a = aa;
b = bb;
c = cc;
Lab Solutions
Centre for Information Technology and Engineering, Manonmaniam Sundaranar
University 23
}
void dump()
{
Systen.out.println( "a = " + a +"b=" +b+ "c=" +c);
}
}
class Y extents debuggable{
private int i,j,k;
public:
Y( int ii =0,int jj=0,int kk=0)
{
i = ii;
j = jj;
k = kk;
}
void dump()
{
Systen.out.println( "i = " + i +"j=" +j+ "k=" +k);
}
}
class Z extents debuggable{
private int p,q,r;
public:
Y( int pp =0,int qq=0,int rr=0)
{
p = pp;
q = qq;
r = rr;
}
void dump()
{
Systen.out.println( "p = " + p +"q=" +q+ "r=" +r);
}
}
class abstdemo
{
public static void main(String arg[])
{
X x(1,2,3);
Y y(2,4,5);
Z z;
x = new X;
y = new Y;
z = new Z;
x.dump();
y.dump();
z.dump();
}
Object Oriented Programming with Java
Centre for Information Technology and Engineering, Manonmaniam Sundaranar
University 24
Lab 6 (2 hrs Real Time)
Ex - 6.1
// One interface an extend another.
interface A
{
void meth1();
void meth2();
}
// B now includes meth1() and meth2()--it adds meth3().
interface B extends A
{
void meth3();
}
// This class must implement all of A and B
class MyClass implements B
{
public void meth1 ( )
{
System.out.println(Implement meth1().);
}
public void meth2()
{
System.out.println (Implement meth2().);
}
public void meth3()
{
System.out.println (Implement meth(). );
}
}
class IFExtend
{
public static void main(String arg[])
{
MyClass ob = new MyClass();
ob.meth1();
ob.meth2();
ob.meth3();
}
}
Lab Solutions
Centre for Information Technology and Engineering, Manonmaniam Sundaranar
University 25
Ex 6.2
class Number
{
protected int x;
protected int y;
}
interface Arithmetic
{
int add(int a, int b);
int sub(int a, int b);
}
class UseInterface extends Number implements Arithmetic
{
public int add(int a, int b)
{
return(a + b);
}
public int sub(int a, int b)
{
return (a - b);
}
public static void main(String args[])
{
UseInterface ui = new UseInterface();
System.out.println(Addition --- > + ui.add(2,3));
System.out.println(Subtraction ----- > + ui.sub(2,1));
}
}
Ex 6.3
// Interface
public interface Test
{
public int square(int a);
}
// Implements
class arithmetic implements Test
{
int s = 0; public int square(int b) {
System.out.println(Inside arithmetic class implemented method square);
System.out.println(Square of + is +s);
return s;
}
void armeth()
{
Object Oriented Programming with Java
Centre for Information Technology and Engineering, Manonmaniam Sundaranar
University 26
System.out.println(Inside method of class Arithmetic); }
}
// use the object
class ToTestInt
{
System.out.println(si);
}
}
}
class InnerClassDemo{
public static void main(String args[]){
Outer outer = new Outer();
outer.display();
outer.test();
}
Lab Solutions
Centre for Information Technology and Engineering, Manonmaniam Sundaranar
University 27
}
Lab 7 ( 2 hrs Real time)
Ex 7.1
COLOUR CHECKING
import java.awt. *;
public class ColourChecking
{
public static void main(String arg [ ])
{
Color rgb, hsb;
rgb = new Color (193,255,183);
int red, green, blue;
red = rgb.getRed ( );
green = rgb.getGreen ( );
blue = rgb.getBlue ( );
float x [ ] = {0.0f,0.0f,0.0f}; rgb.RGBtoHSB(red, green, blue, x);
System.out.println (RGB Combination);
System.out.println (Red : +red+Green: +green+Blue : +blue);
System.out.println (Hue : +x[0]+ Saturation: +x[1] +
Brightness: +x[2]);
{
int fa, fb, fc;
int a = 4, b = 5, c = 6;
Factorial f;
f = new Factorial ( );
fa = f.fact (a);
fb =f.fact (b);
fc = f.fact (c);
System.out.println(Factorial of + a + is + fa);
System.out.println (Factorial of + b + is + fb);
System.out.println(Factorial of + c + is + fc);
}
}
Ex 7.3.2
FIBONACCI NUMBERS : RECURSION
public class Fibonacci
{
long fibo (int n)
{
if (n <= 1) return 1;
else
return (fibo(n 1) + fibo (n 2) );
}
public static void main (String arg [ ])
{
Fibonacci f;
long l;
f = new Fibonacci ( );
l = f.fibo (5);
System.out.println (5th Fibonacci number is : +1);
}
}
}
public void setX(int x)
{
this.x = x;
}
public void setY (int y)
{
this.y = y;
}
public void setXY (int x, int y)
{
this.x = x;
this.y = y;
}
public int getX( )
{
Object Oriented Programming with Java
Centre for Information Technology and Engineering, Manonmaniam Sundaranar
University 30
return x;
}
public int gety ( )
{
return y;
}
public int addXY ( )
{
return (x + y);
}
public void display( )
{
System.out.println (x);
System.out.println (y);
}
public double distance (point p2)
{
return(Math.sqrt( (x-p2.x)* (x-p2.x) + (y-p2.y) * (y p2.y)) );
}
public static void main (String args[ ])
{
double a, b, c;
point op,op1,op2;
op = new point(5, 6);
op1 = new point();
op2 = new point();
op1.setX(3);
op1.setY(6);
op1.getX();
op1.gety();
op2.setXY(8,9);
op2.addXY();
a = op1.distance(op2);
b = op2.distance(op);
c = op.distance(op1);
System.out.println(Distance between point op1 to op2 is+a);
System.out.println(Distance between point op2 to op is +b);
System.out.println(Distance between point op to op1 is +c);
System.out.println( Points Of op, op1, op2);
op.display();
op1.display();
op2.display();
}
}
Ex 8.2
import java.lang.Math. *;
import java.lang.Number.*;
class Num4
Lab Solutions
Centre for Information Technology and Engineering, Manonmaniam Sundaranar
University 31
{
private double db1;
private long lg;
public Num4 ( )
{
db1 = 108.0d;
lg = 249;
}
public Num4(double d, long l)
{
db1 = d;
lg = 1;
}
public boolean isZero ( )
{
if (db1 == 0.0)
return true;
else
return false;
}
public boolean isPositive ( )
{
if(db1 > 0.0)
return true;
else
return false;
}
public boolean isNegative ( )
{
if (db1 < 0.0)
return true ;
else
return false;
}
public boolean isodd( )
{
if (db1 % 2 != 0.0)
return true;
else return false;
}
public boolean isEven ( )
{
if (db1 % 2 == 0.0)
return true ;
else return false;
}
public boolean isPrime ( )
{
int i, lastn;
Object Oriented Programming with Java
Centre for Information Technology and Engineering, Manonmaniam Sundaranar
University 32
double a;
boolean flag;
a = Math.sqrt(lg);
lastn = (int)a;
flag = true;
for (i=2; i<lastn; i++)
{
if (lg != i)
{
if( lg % i ==0)
{
flag = false;
break;
}
}
}
if (flag)
return true;
else return false;
}
public boolean isAmstrong ( )
{
if (db1 == 0.0)
return true;
else return false;
}
public double getFactorial ( )
{
double d=1;
for(int i = 1;i <lg; i++)
d *=i;
return d;
}
public double getSqrt ( )
{
double d;
d = (double) lg;
d= Math.sqrt(d);
return d;
}
public double getSqr ( )
{
double d;
d = (double) lg;
d = d * d;
return d;
}
public double sumDigits( )
{
Lab Solutions
Centre for Information Technology and Engineering, Manonmaniam Sundaranar
University 33
double d=0;
while( lg>9)
{
d += lg % 10;
lg = lg/10;
}
d +=lg;
return d;
}
public double getReverse ( )
{
double d =0;
double temp;
while (lg>9)
{
temp = lg%10;
d = d * 10 + temp;
lg = lg/10;
System.out.println ("\n"+ temp + "\t" + d +" \t "+lg);
}
d = d * 10 +lg;
System.out.println ("Inside class" + d);
return d;
}
public void dispBinary ( )
{
System.out.println("ByteValue of lg :" + Long.toBinaryString(lg));
}
public static void main (String args [ ])
{
Num4 mynum = new Num4( );
double d = 199;
System.out.println(" The given numbers are 108.0d and 249");
System.out.println ("isZero " + mynum.isZero() );
System.out.println ("isPositive " + mynum. isPositive());
System.out.println ("isNegative " + mynum.isNegative() );
System.out.println ("isOdd " + mynum.isodd());
System.out.println ("isEven " + mynum.isEven());
System.out.println (" isPrime " +mynum.isPrime());
System.out.println ("getFactorial " + mynum.getFactorial());
System.out.println ("getSqrt " + mynum. getSqrt( ));
System.out.println ("getSqr " + mynum.getSqr( ) );
System.out.println ("sumDigits " + mynum.sumDigits( ));
System.out.println ("getReverse " + mynum.getReverse( ));
mynum.dispBinary();
System.out.println (" isPrime " +mynum.isPrime());
}
}
Ex 8.3
Object Oriented Programming with Java
Centre for Information Technology and Engineering, Manonmaniam Sundaranar
University 34
//create a package
package mypack;
class Circle
{
double r;
void area()
{
System.out.println("Area of the circle = " + (3.14 * r * r));
}
}
class Square
{
double s;
void area()
{
System.out.println("Area of the Square = " + (s * s));
}
}
class Rectangle
{
double l,b;
void area()
{
System.out.println("Area of the circle = " + (l * b));
}
}
//implements the package
import mypack.Circle;
class Eg
{
public static void main(String a[])
{
Circle c = new Circle();
c.area();
}
}
Ex 8.4
package p1;
public class ex
{
public ex()
{
System.out.println("Created");
}
Lab Solutions
Centre for Information Technology and Engineering, Manonmaniam Sundaranar
University 35
public void display() {
System.out.println("Hello");
}
}
import p1.*;
class ex1
{
public static void main(String[] a) {
ex e=new ex(); e.display();
}
}
Lab - 9 (2 Hrs Real Time)
Ex 9.1
// Automatic type conversions apply to overloading
class OverloadDemo
{
void test()
{
System.out.println (No parameters );
}
void test (int a, int b)
{
System.out.println (a and b: + a + + b);
}
void test (double a)
{
System.out.println (Inside test (double) a : + a);
}
}
class Overload
{
public static void main (String args[])
{
OverloadDemo ob = new OverloadDemo();
ob.test();
ob.test(5);
ob.test(10,20);
ob.test(23,56);
}
}
Ex 9.2
Object Oriented Programming with Java
Centre for Information Technology and Engineering, Manonmaniam Sundaranar
University 36
class Box
{
private int length;
private int breadth;
public Box ( )
{
length =0;
breadth =0;
}
public Box (int x, int y)
{
length = x;
breadth =y;
}
public void setval (int x, int y)
{
length = x;
breadth = y;
public int area ( )
{
return (length * breadth);
}
}
class Box3d extends Box
{
private int height;
public Box3d ( )
{
super ( );
height = 0;
}
public Box3d(int x, int y, int z)
{
super (x, y);
height = z;
}
public void setval (int x, int y, int z)
{
super.setval(x, y);
height = z;
}
public int volume ( )
{
return (super.area ( ) * height );
}
public static void main(String arga [ ])
{
Box b1 = new Box ( );
Box3d b2 = new Box3d(12,34,18);
b1.setval (25,30);
Lab Solutions
Centre for Information Technology and Engineering, Manonmaniam Sundaranar
University 37
System.out.println (The area of b1 is : + b1.area( ) );
System.out.println (The volume of b2 is : + b2.volume ( ));
}
}
Ex 9.3
import java.util.*;
class Vectdemo
{
public static void main(String ar[])
{
String s = "Delhi";
String ss = "Chennai";
Vector v = new Vector();
v.addElement(s);
v.addElement(ss);
System.out.println("Size is " + v.size());
}
}
Lab 10 (2 hrs Real time)
Ex 10.1
class NegTest
{
else {
try {
x = Integer.parseInt(line);
System.out.println(valid element and
it is : +a1[x]);
}
catch(ArrayIndexOutOfBoundsException e)
{
System.out.println(invalid elements );
System.out.println(exception generated : +e); }
catch(NumberFormatException n)
{
System.out.println(sorry no characters);
exception : + n); }
System.out.println(generated
}
}
}catch(IOException i){ }
}
}
Ex 10.3
// Accept file name as command line arguments.
import java.io.*;
class BaseSubException
{
public static void main(String a[])
{
if(a.length == 0)
{
System.out.println(invalid usage);
System.out.println(usage : Java <filename> file1
file2 file3 ...);
return;
}
System.out.println(======================);
}
} catch(IOException p) {
System.out.println(super class is higher up in the program);
}
}
}
}
Ex 10.4
import java.io.*;
class FinallyException
{
public static void main(String a[]) throws Exception
{
try
{
BufferedInputStream f1 = null;
size; I++) {
for(int I = 0; I<
catch(NullPointerException n) {
{
System.out.println(Inside main);
int I = 0; int j = 40/I;
System.out.println(this statement is not printed); }
}
/* Output of this program is
* inside main
* java.lang.ArithmeticException: / by Zero
* at ThrowsException.main(ThrowsEception.java:5) */
Ex 10.6
import java.io.*;
class MyException extends Exception
{
private int a; MyException(int b)
{
a = b; }
public String toString() {
return MyException [ + a + ]; } }
class UserdefException
{
Lab Solutions
Centre for Information Technology and Engineering, Manonmaniam Sundaranar
University 41
public int x; final int k = 5; void getInt() {
try {
BufferedReader d = new BufferedReader(new
InputStreamReader(System.in);
System.out.println(do some guess work to generate your own exception );
System.out.println(enter a number between 1 and 10);
System.out.println(between these numbers lies the number to generate your
own exception );
String line; while((line = d.readLine()) != null) {
x = Integer.parseInt(line);
if ( x == 5) {
UserdefException u = new
}
}
Lab - 11 (2 Hrs Real Time)
Ex 11.1
import java. io.*;
Object Oriented Programming with Java
Centre for Information Technology and Engineering, Manonmaniam Sundaranar
University 42
class FileMethods1
{
public static void main(String args[ ] )
{
File f1 = new File( c:\\java, abc.txt) ; System.out.println(File name : +
f1.getName()); System.out.println(path : + f1.getPath());
System.out.println(Absolute path :+f1.getAbsolutePath());
System.out.println(f1.exists() ? file exists : file does not exists);
System.out.println(f1.isDirectory() ? file is a directory : file is not + a
directory);
System.out.println(f1.isFile()? file is an ordinary file : file may be a named
pipe) ;
}
}
Ex 11.2
import java.io.*;
class FileMethods2
{
public static void main(String args[])
{
for (int i = 0; i<args.length; i++) {
File f = new File(c:\\java, args[i]); File f1 = new File(c:\\java\\renfile);
if (f.exists())
{
System.out.println(f + does exists.);
System.out.println(Its size is + f.length()+ bytes);
f.renameTo(f1);
System.out.println(Renamed file name : + f1 + (i+1));
System.out.println(deleting the renamed file+f1+(i+1));
System.out.println (=======================);
f.delete();
}
else
System.out.println(f + does not exists);
}
}
}
Ex 11.3
import java.io.*;
class FileMethods4
{
public static void main (String args[]) throws IOException
{
Lab Solutions
Centre for Information Technology and Engineering, Manonmaniam Sundaranar
University 43
File f = new File (c:/java/temp);
if (f.mkdir())
System.out.println(created a directory); else
System.out.println (unable to create a directory);
}
}
Ex 11.4
import java.io.*;
class Lang
{
public static void main(String a[])throws IOException
{
Runtime r;
r = Runtime.getRuntime();
System.out.println(r.freeMemory());
int x[] = {1};
r.gc();
System.out.println(r.freeMemory());
Process p = r.exec("pbrush.exe");
System.out.println(r.freeMemory());
}
}
Ex 11.5
import java.lang.reflect.*;
import java.util.*;
class Modi
{
public static void main(String a[])throws ClassNotFoundException
{
Class c = Class.forName("Lang");
Method m[] = c.getDeclaredMethods();
for(int i =0; i < m.length; i++)
{
int mo = m[i].getModifiers();
if (Modifier.isPublic(mo))
System.out.println(m[i].getName());
}
}
}
Lab - 12(2 hrs Real time)
Ex 12.1
import java.io.*;
class ReadWriteFile
{
public static byte getInput()[] throws Exception
Object Oriented Programming with Java
Centre for Information Technology and Engineering, Manonmaniam Sundaranar
University 44
{
byte inp[ ] = new byte[50];
System.out.println(enter text.);
System.out.println(only 50 bytes i.e. about 2 lines );
System.out.println(press enter after each line to get
input into the program);
for(int i=0; i<50; i++)
{
inp[i] = (byte)System.in.read();
}
return inp;
}
public static void main(String args[])throws Exception
{
byte input[] = getInput();
OutputStream f = new FileOutputStream(c:/java/write.txt); for(int i=0; i<50;
i++) {
f.write(input [i]);
}
f.close();
int size;
InputStream f1 = new FileInputStream (c:/java/write.txt); size =
f1.available(); System.out.println(reading contents of file write.txt); for(int
i=0; i<size; i++) {
System.out.print((char)f1.read());
} f.close();
}
}
Ex 12.2
import java.io.*;
class ByteArray
{
public static void main(String args[]) throws Exception
{
ByteArrayOutputStream f = new ByteArrayOutputStream(12);
System.out.println ("enter 10 characters and a return");
System.out.println ("These will be converted to uppercase and displayed");
while (f.size() != 10)
{
f.write(System.in.read( ) );
}
System.out.println("Accepted characters into an array");
byte b[] = f.toByteArray();
Lab Solutions
Centre for Information Technology and Engineering, Manonmaniam Sundaranar
University 45
System.out.println("displaying characters in the array");
for(int l=0;l<b.length;l++)
{
System.out.println((char)b[l]);
}
ByteArrayInputStream inp = new ByteArrayInputStream(b);
int c;
System.out.println("converted to upper case characters");
for (int i=0;i<1;i++)
{
while((c=inp.read()) != -1)
{
System.out.print(Character.toUpperCase((char)c));
}
System.out.println();
inp.reset();
}
}
}
Ex 12.3
import java.io.*;
public class ReaderWriter
{
public static void main(String args[])
{
try{
BufferedReader in = new BufferedReader(new FileReader(args[0]));
String s, s1 = new String();
while ((s = in.readLine())!= null)
s1 += s + \n;
in.close();
BufferedReader stdin =new BufferedReader(new InputStreamReader
(System.in));
System.out.println(enter line);
System.out.println (usage of BufferedReader and
InputStreamReader);
System.out.println (stdin.roadLine());
StringReader in2= new StringReader(s1);
int c;
System.out.println (printing individual characters of the file
+ args[0]);
while (( c = in2.read()) != -1)
System.out.println((char)c);
BufferedReader in4 = new BufferedReader(new
StringReader (s1));
PrintWriter p = new PrintWriter (new BufferedWriter(new
FileWriter(demo.out)));
while((s = in4.readLine()) != null)
p.println(output + s );
p.close();
Object Oriented Programming with Java
Centre for Information Technology and Engineering, Manonmaniam Sundaranar
University 46
}catch (IOException e ) { }
}
}
Lab - 13 (2 hrs Real Time)
Ex 13.1
class IntThread implements Runnable
{
Thread t;
IntThread()
{
t = new Thread ( this, Test thread);
System.out.println ( Child thread : + t);
t.start();
}
public void run()
{
try {
for (int i= 5; i<0; i--)
{
System.out.println (Child thread : + i);
Thread.sleep (500);
}
}catch (InterruptedException e) { }
System.out.println (Exiting child thread );
}
public static void main (String args[])
{
IntThread i = new IntThread();
try {
for ( int j=5; j >0; j--)
{
System.out.println (Main thread : + j);
Thread.sleep (1000);
}
} catch (InterruptedException e) { }
System.out.println ( Main thread exiting );
}
}
Ex 13.2
class MyThread extends Thread
{
MyThread()
{
super (Using Thread class);
System.out.println (Child thread: + this);
Lab Solutions
Centre for Information Technology and Engineering, Manonmaniam Sundaranar
University 47
start();
}
public void run()
{
try
{
for ( int i =5; i > 0; i--)
{
System.out.println (Child thread + i);
Thread.sleep (500);
}
} catch (InterruptedException e) { }
System.out.println (exiting child thread );
}
}
class TestMyThread
{
public static void main(String args[])
{
new MyThread();
try {
for ( int k = 5; k < 0; k--)
{
System.out.println (Running main thread : + k);
Thread.sleep(1000);
}
}catch (InterruptedException e) { }
System.out.println (Exiting main thread . . .);
}
}
Lab - 14(2 hrs Real Time)
Ex 14.1
class ThreadMethod
{
public static void main(String args[])
{
Thread t = Thread.currentThread();
System.out.println (current thread: + t);
System.out.println(Name of the current thread: + t.getName());
System.out.println (Priority : + t.getPriority());
t.setName(mythread);
System.out.println (after name change : + t);
t.setPriority (2);
System.out.println (after priority change : + t);
Object Oriented Programming with Java
Centre for Information Technology and Engineering, Manonmaniam Sundaranar
University 48
System.out.println (number of active thread : + t.activeCount());
}
}
Ex 14.2
class CreateThread extends Thread
{
String tname;
Thread t;
CreateThread(String s)
{
tname = s;
t = new Thread(this, s);
System.out.println (New thread : + t);
t.start();
}
public void run()
{
try
{
for(int i = 5; i > 0; i--)
{
System.out.println (tname + : + i );
Thread.sleep (500) ;
}
} catch (InterruptedException e) { }
System.out.println(tname + exiting.);
}
}
class ThreadMethod2
{
public static void main(String args[])
{
CreateThread m1 =new CreateThread(one);
CreateThread m2 = new CreateThread (two);
System.out.println(Thread m1 is alive : + m1.t.isAlive());
System.out.println (Thread m2 is alive: + m1.t.isAlive());
try {
System.out.println (Waiting for thread to finish .);
m1.t.join();
m2.t.join();
} catch (InterruptedException e) { }
System.out.println( Thread m1 is alive : + m1.t.isAlive());
System.out.println( Thread m2 is alive : + m2.t.isAlive());
System.out.println ( Main thread exiting );
}
}
Lab Solutions
Centre for Information Technology and Engineering, Manonmaniam Sundaranar
University 49
Lab - 15 (2 hrs Real Time)
Ex 15.1
import java.lang.Thread;
import java.lang.System;
import java.lang.Math;
import java.lang.*;
class ThreadTest1
{
public static void main (String args [ ])
{
MyThread thread1 = new MyThread (thread1:);
MyThread thread2 = new MyThread (thread2:);
thread1.start ( );
thread2.start ( );
boolean thread1IsAlive = true;
boolean thread2IsAlive = true ;
do
{
if (thread1IsAlive && !thread1.isAlive ( ) )
{
thread1IsAlive = false;
System.out.println (Thread1 is dead.);
}
if (thread2IsAlive && ! thread2.isAlive ( ))
{
thread2IsAlive = false;
System.out.println (Thread 2 is dead.);
}
}while (thread1IsAlive || thread2IsAlive);
}
}
class MyThread extends Thread
{
static String message [ ] = {Java, is, hot, aromatic,
and, invigorating.};
public MyThread (String id)
{
super (id);
}
public void run ( )
{
String name = getName ( );
for (int i=0;i<message.length; ++i )
{
Object Oriented Programming with Java
Centre for Information Technology and Engineering, Manonmaniam Sundaranar
University 50
randomWait ( );
System.out.println (name + message[i] );
}
}
void randomWait ( )
{
try
{
sleep ((long)(3000*Math.random ( ) ) );
}
catch (InterruptedException x )
{
System.out.println (Interrupted!);
}
}
}
Ex 15.2
import java.lang.Thread;
import java.lang.System;
import java.lang.Math;
import java.lang.*;
import java.lang.Runnable;
class ThreadTest2
{
public static void main (String args[ ])
{
Thread thread1 = new Thread (new MyClass (thread1:) );
Thread thread2 = new Thread (new MyClass (thread2:) );
thread1.start ( );
thread2.start ( );
boolean thread1IsAlive = true;
boolean thread2IsAlive = true;
do {
if (thread1IsAlive && !thread1.isAlive ( ) )
{
thread1IsAlive = false;
System.out.println (Thread 1 is dead.);
}
if (thread2IsAlive && !thread2.isAlive ( ))
{
thread2IsAlive = false;
System.out.println (Thread 2 is dead.);
}
} while (thread1IsAlive || thread2IsAlive );
}
}
class MyClass implements Runnable
{
static String message [ ] = {Java, is, hot, aromatic,
Lab Solutions
Centre for Information Technology and Engineering, Manonmaniam Sundaranar
University 51
and, invigorating.};
String name;
public MyClass (String id)
{
name = id;
}
public void run ( )
{
for (int i =0;i<message.length;++i)
{
randomWait ( );
System.out.println (name + message[i]) ;
}
}
void randomWait ( )
{
try
{
Thread.currentThread ().sleep((long)(3000*Math.random()));
}
catch (InterruptedException x)
{
System.out.println (Interrupted !);
}
}
}
Lab - 16 (2 hrs Real Time)
Ex 16.1
class Inventory
{
static int qoh = 500;
static int req = 0;
static public synchronized void request(int order)
{
if ( order <= qoh)
{
OurThread()
{
super (test thread);
System.out.println(child thread : + this);
start();
}
public void run()
{
for(int i=5; i > 0; i--)
{
try
{
sleep(100);
} catch(InterruptedException e ) { }
Inventory.request((int)(Math.random()*100));
}
}
}
Ex 16.2
1: class Consumer implements Runnable
{
Stock c;
Thread t;
Consumer (Stock c)
{
Lab Solutions
Centre for Information Technology and Engineering, Manonmaniam Sundaranar
University 53
this.c = c;
t = new Thread(this, producer thread);
t.start();
}
public void run()
{
while (true)
{
try {
t.sleep(750);
} catch (InterruptedException e) { }
c. getstock((int)(Math.random()*100));
}
}
void stop()
{
t.stop();
}
}
2: class Producer implements Runnable
{
Stock s;
Thread t;
Producer(Stock s )
{
this.s = s;
t = new Thread(this, producer thread);
t.start();
}
public void run()
{
while(true)
{
try
{
t.sleep(750);
} catch (InterruptedException e) { }
s.addstock((int)(Math.random()*100));
}
}
void stop()
{
t.stop();
}
}
3:
Object Oriented Programming with Java
Centre for Information Technology and Engineering, Manonmaniam Sundaranar
University 54
class Stock
{
int goods = 0;
public synchronized void addstock(int i)
{
goods = goods + i;
System.out.println(Stock added : + i);
System.out.println(present stock : + goods );
notify();
}
public synchronized int getstock(int j)
{
while(true)
{
if(goods >= j)
{
goods = goods - j ;
System.out.println(Stock taken away : + j);
System.out.println(Present stock : + goods);
break;
}
else {
System.out.println(Stock not enough );
System.out.println ( Waiting for stocks to come );
try {
wait();
}catch(InterruptedException e) { }
}
} / / end of while
return goods;
}
public static void main(String args[])
{
Stock j = new Stock();
Producer p = new Producer(j);
Consumer c = new Consumer(j);
try {
Thread.sleep(10000);
p.stop();
c.stop();
p.t.join();
c.t.join();
System.out.println(Thread stopped);
} catch(InterruptedException e) { }
System.exit(0);
}
}
Lab Solutions
Centre for Information Technology and Engineering, Manonmaniam Sundaranar
University 55
Ex 16.3
import java.lang.Thread;
import java.lang.System;
import java.lang.Math;
import java.lang.InterruptedException;
class ThreadSynchronization
{
public static void main (String args [ ])
{
MyThread thread1 = new MyThread (thread1:); MyThread thread2 = new
MyThread (thread2:); thread1.start ( ); thread2.start ( ); boolean
thread1IsAlive = true; boolean thread2IsAlive = true; do
{
if (thread1IsAlive && !thread1.isAlive ( ) )
{
thread1IsAlive = false;
System.out.println (Thread 1 is dead.); }
if (thread2IsAlive && !thread2.isAlive ( ))
{
thread2IsAlive = false;
System.out.println (Thread 2 is dead.); }
}while (thread1IsAlive | | thread2IsAlive);
}
}
class MyThread extends Thread
{
static String message [ ] = {Java, is, hot, aromatic,,
and, invigorating. };
public MyThread (String id)
{
super (id);
}
public void run ( )
{
SynchronizedOutput.displayList (getName(),message);
}
void randomWait ()
{
try {
sleep ( (long ) (3000*Math.random ( )) );
}
Object Oriented Programming with Java
Centre for Information Technology and Engineering, Manonmaniam Sundaranar
University 56
catch (InterruptedException x )
{
System.out.println (Interrupted!);
}
}
}
class SynchronizedOutput
{
public static synchronized void displayList(String name,
String list [ ])
{
for (int i=0;i<list.length; + +i)
{
MyThread t = (MyThread) Thread.currentThread ( );
t.randomWait ( );
System.out.println (name + list [i]);
}
}
}
Ex 16.4
public class ComplexThread extends Thread
{
private int delay;
ComplexThread (String name, float seconds)
{
super (name);
// start up ourself!
}
public void run ( )
{
while (true)
{
System.out.println (Thread.currentThread ( ).getName ( ) );
try
{
Thread.sleep (delay);
}
catch (InterruptedException e)
{
return ;
}
}
}
public static void main (String argc[ ])
{
Lab Solutions
Centre for Information Technology and Engineering, Manonmaniam Sundaranar
University 57
new ComplexThread (one potato, 1.1F);
new ComplexThread (two potato, 1.3F);
new ComplexThread (three potato, 0.5F);
new ComplexThread (four, 0.7F);
}
}
Lab - 17( 2 hrs Real Time):
Ex 17.1
import java.awt.Graphics;
public class HelloWorld extends java.applet.Applet
{
public void paint (Graphics g )
{
g.drawString (Hello World , 5, 50 );
}
}
// After compiling this run the program using appletviewer.
// create a following HTML coding.
// appletviewer filename (html file name).
< HTML >
< APPLET CODE = HelloWorld WIDTH=200 HEIGHT = 100>
< / APPLET >
< / HTML >
Ex 17.2
// Logo version 1.0 rev
import java.awt.Graphics;
import java.awt.Font;
public class log extends java.applet.Applet
{
// Declare the object variable array StrLine with 3 values.
String StrLine[] = new String[1];
// Declare the Font object called appFont.
Font appFont;
public void init()
{
// Get the value for the
Object Oriented Programming with Java
Centre for Information Technology and Engineering, Manonmaniam Sundaranar
University 58
String att = getParameter(Text);
StrLine[0] = (att == null) ? Please Enter Something in
the parameter Text ! : att;
// Construct the font with the following attributes :
{
String att = getParameter(Text + i);
StrLine[i] = (att == null) ? (please put a parameter
in Text + i ) : att;
}
appFont = new Font(Helvetica, Font.BOLD, 28);
// Set r = to the bounds of the applet
r = bounds();
}
// Override this methods from the interface Runnable
public void run()
{
// Set the current Threads priority.
Thread.currentThread().setPriority(Thread.NORM_PRIORITY-1);
// Initialize the locations of the two lines of text to be
// of the screen.
width[1] = 2000;
width[2] = 2000;
repaint();
// Algorithm to send the first line of Text across the screen.
for(int i = -50;i < r.width/2; i+=7)
{
width[0] = i;
repaint();
// Rest
Rest(1);
}
// Algorithm to send the second line of text across the screen.
for(int i=r.width + 20; i > r.width/2; i -= 7)
{
width[1] = i;
repaint();
Rest(1);
}
// Algorithm to send the third line of text across the screen
for(int i = 90; i < r.width/2; i += 7)
Object Oriented Programming with Java
Centre for Information Technology and Engineering, Manonmaniam Sundaranar
University 60
{
width[2] = i;
repaint();
// Rest
Rest(1);
}
}
void Rest(int r)
{
// Rest for a period of time
try
{
myThread.sleep(100*r);
}catch(InterruptedException e)
{
return;
}
}
public void start()
{
if (myThread == null)
{
myThread = new Thread(this);
myThread.start();
}
}
resize (400,400);
addMenu( );
show ( );
}
void addMenu()
{
MenuBar menubar = new MenuBar ();
Menu file = new Menu (File);
Menu edit = new Menu (Edit);
Menu view = new Menu (View);
file.add (Open);
file.add(Save);
file.add(Close);
file.add(Quit);
edit.add( Copy);
edit.add(Cut);
edit.add (Zoom);
menubar.add (file);
menubar.add(edit);
menubar.add(view);
setMenuBar(menubar);
}
public void paint(Graphics g)
{
Object Oriented Programming with Java
Centre for Information Technology and Engineering, Manonmaniam Sundaranar
University 62
g.drawString (menuSelection,100,100);
}
public boolean handleEvent(Event event)
{
if (event.id = =Event.WINDOW_DESTROY)
{
System.exit (0);
return true;
}
else if (event.id = = Event.ACTION_EVENT &&
event. target instanceof MenuItem )
{
if (Quit.equals (event.arg) )
{
System.exit (0);
return true;
}
else
{
menuSelection = You selected +event.arg.toString ( )
repaint ( );
return true;
}
}
else
return false;
}
}
Ex 18.3
import java.awt.*;
public class flow1 extends Frame
{
public flow1()
{
super (Flow Layout 1);
Lab Solutions
Centre for Information Technology and Engineering, Manonmaniam Sundaranar
University 63
setLayout (new FlowLayout ( ) );
show();
}
void addMenus()
{
MenuBar menubar = new MenuBar();
Menu file = new Menu (File);
Menu dialog = new Menu (Dialog);
file.add (Quit);
dialog.add(Show);
dialog.add(Hide);
menubar.add (file);
menubar.add(file);
menubar.add(dialog);
setMenuBar (menubar);
}
void createDialog ( )
{
dialog = new Dialog (this, Dialog Box, false);
dialog.resize (200,200);
}
public boolean handleEvent(Event event)
{
if (event.id = =Event.WINDOW_DESTROY)
{
System.exit (0);
return true;
}
else if (event.id == Event.ACTION_EVENT &&
event.target instanceof MenuItem)
{
if (Quit. equals (event.arg) )
{
System.exit (0);
return true;
} else if (Show.equals (event.arg ) ) { dialog.show ( );
return true;
} else
{
dialog.hide ();
return true;
}
}
else
return false;
}
Lab Solutions
Centre for Information Technology and Engineering, Manonmaniam Sundaranar
University 65
}
Ex 19.2
Grid Layout
import java.awt.*;
public class grid1 extends Frame
{
public grid1()
{
super ( Grid Layout 1);
setLayout (new GridLayout (3, 3, 30, 5) );
add (new Button (Button 1 ) );
add (new Button (Button 2) );
add (new Button ( Button 3) );
add (new Button ( Button 4 ) );
add (new Button (Button 5 ) );
setBounds(100,100,200,100);
setVisible (true);
}
public static void main(String arg [ ])
{
new grid1();
}
}
Object Oriented Programming with Java
Centre for Information Technology and Engineering, Manonmaniam Sundaranar
University 66
Ex 19.3
Border Layout
import java.awt.*;
public class border1 extends Frame
{
public border1()
{
super (Border Layout 1);
setFont (new Font (Helvetica, Font. PLAIN, 16 ) );
setLayout (new BorderLayout (5, 5));
add ( new Button ("Button 1"),BorderLayout.WEST);
add ( new Button ("Button 2"),BorderLayout.NORTH);
add ( new Button ("Button 3"),BorderLayout.EAST);
add ( new Button ("Button 4"),BorderLayout.SOUTH);
add ( new Button ("Button 5" ),BorderLayout.CENTER);
setBounds(100, 100, 300, 200);
setVisible(true);
}
public static void main (String arg [ ])
{
new border1( );
}
Lab Solutions
}
static public void main (String [ ]argv )
{
new border2 ( );
}
}
Lab - 20 (2 Hrs Real Time)
Ex 20.1
//Win version 1.0 rev
import java.awt.*;
public class Win extends java.applet.Applet
{
public void init() {
// Set the Layout to FlowLayout
setLayout(new FlowLayout(FlowLayout.CENTER, 10, 10));
// Add a Label and a Button
add (new Label(Please press the button below:)); Button show = new
Button(Show Window); add(show);
}
}
// After compiling this run the program using appletviewer.
// create a following HTML coding.
// appletviewer filename (html file name).
<applet code = Win width=200 height=100>
</applet>
Lab Solutions
Centre for Information Technology and Engineering, Manonmaniam Sundaranar
University 69
Ex 20.2
import java.awt. *;
public class PanelExample extends Frame
{
public static void main (String args[] )
{
panelExample win = new panelExample();
}
public panelExamaple ()
{
super (panelExample);
pack ( );
resize (400,400);
addMenus ( );
addpanel ( );
show ( );
}
void addMenus ( ) {
MenuBar menubar = new MenuBar ( );
Menu file = new Menu(File);
file.add (Quit );
menubar.add (file);
setMenuBar (menubar);
}
void addpanel ( ) {
Panel panel = new Panel();
panel.add(new Button (one) );
panel.add (new Button (two) );
panel.add (new Button (three) );
panel.add (new Button (four) );
panel.add (new Button (five) );
add (South, panel );
}
public boolean handleEvent (Event event ) {
if(event.id == Event.WINDOW_DESTROY) {
System.exit ( 0);
return true;
return true;
}else if (event.id == Event.ACTION_EVENT && event.target instanceof
MenuItem) {
if ("Quit".equals(event.arg ) ) {
System.exit(0);
return true;
}
else
{
return false;
}
}
else if (event.id == Event.ACTION_EVENT && event.target instanceof
Checkbox ) {
String text ="";
for (int i=0;i<6; ++i) {
if (checkbox [i].getState ( ) )
text += checkbox[i].getLabel ( ) + " ";
}
label.setText(text);
Object Oriented Programming with Java
Centre for Information Technology and Engineering, Manonmaniam Sundaranar
University 72
return true;
}
else return false;
}
}
Ex - 20.4
import java.applet.*;
import java.awt.*;
import java.awt.event.*;
public class Appletdemo extends Applet
{
Button b[];
TextField t1;
String txt=""; int no1=0,no2=0,no3=0;
String oprt="";
public void init()
{
b = new Button[16];
for(int i =0; i <= 9; i++)
{
b[i] = new Button(i + "");
}
b[10] = new Button("+");
b[11] = new Button("-");
Lab Solutions
Centre for Information Technology and Engineering, Manonmaniam Sundaranar
University 73
b[12] = new Button("*");
b[13] = new Button("/");
b[14] = new Button("=");
b[15] = new Button("C");
t1 = new TextField(25);
add(t1);
for(int i =0; i <= 15; i++)
{
add(b[i]);
b[i].addActionListener(new Bh());
}
}
class Bh implements ActionListener
{
public void actionPerformed(ActionEvent e)
{
String s = e.getActionCommand();
if (s.equals("+") || s.equals("-") ||
s.equals("*") || s.equals("/") )
{
no1 = Integer.parseInt(t1.getText());
oprt = s;
t1.setText(no1+ "");
txt = "";
}
else if (s.equals("C"))
{
no1 = no2 = 0;
txt = "";
t1.setText("");
}
else if (s.equals("="))
{
no2 = Integer.parseInt(t1.getText());
if (oprt.equals("+"))
t1.setText((no1 + no2) + "");
if (oprt.equals("-"))
t1.setText((no1 - no2) + "");
if (oprt.equals("*"))
t1.setText((no1 * no2) + "");
if (oprt.equals("/"))
t1.setText((no1 / no2) + "");
txt = "";
}
else
{
txt = txt + s;
t1.setText(txt);
}
Object Oriented Programming with Java
Centre for Information Technology and Engineering, Manonmaniam Sundaranar
University 74
}
}
}
Ex- 20.5
import java.awt.*;
public class ListExample extends Frame
{
Label label = new Label ("Default Text");
Choice choice = new Choice ( );
List list = new List (3, true);
public static void main (String args [ ])
{
ListExample win = new ListExample ( );
}
public ListExample ( )
{
super ("ListExample" );
addMenus();
addComponents();
pack();
resize(400,400);
show();
}
void addMenus()
{
MenuBar menubar = new MenuBar();
Menu file = new Menu("file");
file.add("Quit");
menubar.add(file);
setMenuBar(menubar);
}
void addComponents()
{
add("North", label );
label.setAlignment (Label.CENTER);
Panel panel = new Panel();
Panel panel1 = new Panel();
Panel panel2 = new Panel();
Lab Solutions
Centre for Information Technology and Engineering, Manonmaniam Sundaranar
University 75
try {
choice.addItem ("one");
choice.addItem("two");
choice.addItem ("three");
}catch (NullPointerException ex)
{
}
panel1.add (choice);
list.addItem ("four");
list.addItem ("five");
list.addItem ("six");
list.addItem ("seven");
list.addItem ("eight");
panel2. add (list );
panel.add(panel1);
panel.add(panel2);
add("Center", panel);
}
public boolean handleEvent (Event event)
{
if (event.id == Event.WINDOW_DESTROY ) {
System.exit (0);
return true;
}
else if (event.id == Event.ACTION_EVENT && event .target instanceof
MenuItem)
{
if ("Quit".equals(event.arg) )
{
System.exit (0);
return true ;
}
else
{
return false;
}
}
else
if (event.target instanceof Choice || event.target instanceof
List )
{
String text = choice. getSelectedItem () + " ";
for (int i=0;i<5;++i)
{
if (list.isSelected (i) )
text += list.getItem (i) + " ";
}
label.setText(text);
return true;
}
Object Oriented Programming with Java
Centre for Information Technology and Engineering, Manonmaniam Sundaranar
University 76
else return false;
}
}
Ex 20.6
import java.awt.*;
import java.applet.*;
public class AWTEventDemo extends Applet
{
private String message = Waiting for events . . .;
// Default constructor
public AWTEventDemo ( )
{
// Call superclass
super ( );
}
// Init method, called when applet first initializes public void
init ( )
{
setBackground(Color.white );
}
// Overridden paint method
public void paint ( Graphics g)
{
g.setColor( Color.blue );
g.drawString (message, 0, size ( ).height 10);
}
// Overridden methods for event handling
public boolean mouseEnter (Event evt, int x, int y)
{
Lab Solutions
Centre for Information Technology and Engineering, Manonmaniam Sundaranar
University 77
// Set message
message = mouseEnter x: + x + Y: + y;
}
Object Oriented Programming with Java
Centre for Information Technology and Engineering, Manonmaniam Sundaranar
University 78
Ex 20.7
import java.awt.*;
import java.applet.*;
public class CanvasApplet extends Applet
{
public void init( ) {
DrawingRegion region = new DrawingRegion ( ); add(region);
}
}
class DrawingRegion extends Canvas
{
public DrawingRegion
{
setSize(150,150);
}
public void paint (Graphics g) {
g.drawRect(0,0,149,149); //draw border around region
150 Canvas", 20,20); //draw string
g.drawstring("A 150 x
}
}
The above code draws a rectangular region on a canvas.
Lab Solutions
Centre for Information Technology and Engineering, Manonmaniam Sundaranar
University 79
Ex 20.8
// Demonstrate the key event handlers.
import java.awt.*;
import java.awt.event.*;
import java.applet.*;
/*
< applet code = SimpleKey width=300 height=100>
< /applet>
*/
public class Simplekey extends Applet implements KeyListener {
String msg = " ";
int X = 10, Y = 20;
public void init() {
addKeyListener(this);
requestFocus();
}
public void keyPressed(KeyEvent ke) {
showStatus("Key Down");
}
public void keyReleased(KeyEvent ke) {
showStatus("Key Up");
}
public void keyTyped (KeyEvent ke) {
msg += ke.getKeyChar();
repaint();
}
public void paint(Graphics g) {
g.drawString(msg, X, Y);
}
}
Object Oriented Programming with Java
Centre for Information Technology and Engineering, Manonmaniam Sundaranar
University 80
Lab - 21 (2 hrs Real Time)
Ex 21.1
import java.awt. *;
public class TextExample extends Frame {
TextField textfield = new TextField (Enter text here.);
}
else
if(event.id == Event.ACTION_EVENT && event target instanceof
MenuItem )
{
if (Quit.equals(event.arg))
{
System.exit (0);
return true;
}
else
Lab Solutions
Centre for Information Technology and Engineering, Manonmaniam Sundaranar
University 81
{
return false ;
}
}
else
if (event.id == Event.ACTION_EVENT && event.target instanceof
TextField )
{
textarea.insertText(textfield.getText() + \n, 0);
return true;
}
else return false;
}
Ex 21.2
import java.awt.*;
public class grid1 extends Frame
{
public grid1()
{
}
}
Lab - 22( 2 hrs Real Time)
Ex 22.1
public class cycle extends java.applet. Applet
{
public void init()
{
// Display the this statement at the bottom of the Window
showStatus( The applet is initializing );
// Pause for a period of time
for(int i = 1;i < 1000000; i++);
}
public void start()
{
showStatus( The applet is starting );
for(int i =1;i < 1000000;i++);
}
public void destroy()
{
showStatus( The applet is being destroyed ... );
for(int i = 1 ;i < 1000000;i++);
}
}
// After compiling this run the program using appletviewer.
// create a following HTML coding.
// appletviewer filename (html file name).
< applet code = cycle width=200 height=200 >
Object Oriented Programming with Java
Centre for Information Technology and Engineering, Manonmaniam Sundaranar
University 84
< / applet >
Ex 22.2
/ / Demonstrate CardLayout.
import java.awt.*;
import java.awt.event.*;
import java.applet.*;
/*
<applet code = CardLayoutDemo width = 300 height = 100 >
< /applet>
*/
public class CardLayoutDemo extends Applet implements
ActionListener,MouseListener { Checkbox Win98, winNT, solaris, mac;
Panel osCards;
CardLayout cardLo;
Button Win, Other;
public void init()
{
Win = new Button ("Windows");
Other = new Button ("Other") ;
add (Win) ;
add (Other);
cardLo = new CardLayout();
osCards = new Panel();
osCards.setLayout (cardLo);
Win98 = new Checkbox ("Windows 98", null, true);
winNT = new Checkbox ("Windos NT");
solaris = new Checkbox ("Solaries");
mac = new Checkbox ("MacOS");
Panel winPan = new Panel();
winPan.add(Win98);
winPan.add(winNT);
Panel otherPan = new Panel();
Lab Solutions
Centre for Information Technology and Engineering, Manonmaniam Sundaranar
University 85
otherPan.add(solaris);
otherPan.add (mac);
osCards.add(winPan, "Windows");
osCards.add (otherPan, "Other");
add (osCards);
Win.addActionListener (this);
Other.addActionListener (this);
addMouseListener (this);
}
public void mousePressed (MouseEvent me)
{
cardLo.next (osCards);
}
public void mouseClicked (MouseEvent me)
{
}
public void mouseEntered (MouseEvent me)
{
}
public void mouseExited (MouseEvent me)
{
}
public void mouseReleased (MouseEvent me)
{
}
public void actionPerformed (ActionEvent ae)
{
if (ae.getSource() == Win )
{
cardLo.show(osCards,"Windows");
}
else {
cardLo.show(osCards, "Other");
}
}
}
Object Oriented Programming with Java
Centre for Information Technology and Engineering, Manonmaniam Sundaranar
University 86
YZ