Oops Lab Manual
Oops Lab Manual
PROGRAM :1
1. Write a java program that prints all real solutions to the quadratic equation ax2+bx+c=0. Read in a,
b, c and use the quadratic formula.
PROGRAM :
import java.util.Scanner;
public class Quadratic
{
public static void main(String[] args)
{
int a, b, c; // coefficients
double root1, root2;
System.out.println("Enter the coefficients");
Scanner in=new Scanner(System.in);
a = in.nextInt();
b = in.nextInt();
c = in.nextInt();
2022-23
OOP with Java Lab /21CSL35
OUT PUT:
2022-23
OOP with Java Lab /21CSL35
PROGRAM :2
2. Create a Java class called Student with the following details as variables within it.
USN
Name
Branch
Phone
Write a Java program to create n Student objects and print the USN, Name, Branch, and Phoneof
these objects with suitable headings.
PROGRAM :
import java.util.*;
public class Student
{
String usn,name,branch;
long phone;
void displayStudent()
{
System.out.println("**********************");
System.out.println("USN= "+usn);
System.out.println("NAME= "+name);
System.out.println("BRANCH= "+branch);
System.out.println("PHONE NUMBER= "+phone);
System.out.println("**********************");
}
for(int i=0;i<n;i++)
st[i]=new Student();
for(int j=0;j<n;j++)
{
2022-23
OOP with Java Lab /21CSL35
}
for( int m=0;m<n;m++)
{
System.out.format("Student %d details are\n",m+1);
st[m].displayStudent();
}
}
}
OUTPUT:
2022-23
OOP with Java Lab /21CSL35
PROGRAM :3
PROGRAM :3A
import java.util.Scanner;
class Prime
{
public static void main(String args[])
{
int i,n,flag=0;
System.out.println("Enter the number");
Scanner inp=new Scanner(System.in);
n=inp.nextInt();
for(i=2;i<n;i++)
{
if(n%i==0)
{
flag=1;
break;
}
}
if(flag==1)
System.out.println("The given number is Not a Prime");
else
System.out.println("The given number is Prime");
}
}
OUTPUT:
2022-23
OOP with Java Lab /21CSL35
PROGRAM :3B
import java.util.*;
class Switch
{
public static void main(String[] args)
{
Scanner inp = new Scanner(System.in);
System.out.println("Enter the Operator (+,-,*,/) : ");
char operator = inp.next().charAt(0);
System.out.println("Enter the First Operand : ");
double first = inp.nextDouble();
System.out.println("Enter the Second Operand : ");
double second = inp.nextDouble();
double result = 0;
switch(operator)
{
case '+':
result = first + second;
System.out.println("The Result is : "+first+" "+operator+" "+second+" = "+result);
break;
case '-':
result = first - second;
System.out.println("The Result is : \n "+first+" "+operator+" "+second+" = "+result);
break;
case '*':
result = first * second;
System.out.println("The Result is : "+first+" "+operator+" "+second+" = "+result);
break;
case '/':
result = first / second;
System.out.println("The Result is : \n "+first+" "+operator+" "+second+" = "+result);
break;
default :
System.out.println("Invalid Operator");
break;
}
}
}
2022-23
OOP with Java Lab /21CSL35
OUTPUT:
2022-23
OOP with Java Lab /21CSL35
PROGRAM :4
4. Design a super class called Staff with details as StaffId, Name, Phone, Salary. Extend this class
by writing three subclasses namely Teaching (domain, publications), Technical (skills), and
Contract (period). Write a Java program to read and display at least 3 staff objects of all three
categories.
PROGRAM:
import java.util.Scanner;
class Staff
{
String staffId;
String name;
long phone;
float salary;
public void accept()
{
Scanner scanner = new Scanner(System.in);
System.out.print("Enter Staff Id: ");
staffId = scanner.next();
System.out.print("Enter Name: ");
name = scanner.next();
System.out.print("Enter Phone: ");
phone = scanner.nextLong();
System.out.print("Enter Salary: ");
salary = scanner.nextFloat();
}
public void display()
{
System.out.println("Staff Id: " + staffId);
System.out.println("Name: " + name);
System.out.println("Phone: " + phone);
System.out.println("Salary: " + salary);
}
}
class Teaching extends Staff
{
String domain;
int n;
public void accept()
{
super.accept();
Scanner scanner = new Scanner(System.in);
System.out.print("Enter Domain: ");
domain = scanner.next();
System.out.print("Enter Number of Publications: ");
2022-23
OOP with Java Lab /21CSL35
n = scanner.nextInt();
System.out.println("\n");
}
public void display()
{
super.display();
System.out.println("Domain: " + domain);
System.out.println("Publications:"+n);
System.out.println("\n");
}
}
class Technical extends Staff
{
String skill;
public void accept()
{
super.accept();
Scanner scanner = new Scanner(System.in);
System.out.print("Enter technical Skills: ");
skill = scanner.nextLine();
System.out.println("\n");
}
public void display()
{
super.display();
System.out.println("Technical Skills: " + skill);
System.out.println("\n");
}
}
class Contract extends Staff
{
int period;
public void accept()
{
super.accept();
Scanner scanner = new Scanner(System.in);
System.out.print("Enter Period: ");
period = scanner.nextInt();
System.out.println("\n");
}
public void display()
{
super.display();
System.out.println("Contract Period: " + period);
}
}
class Four
{
public static void main(String[] args)
{
2022-23
OOP with Java Lab /21CSL35
2022-23
OOP with Java Lab /21CSL35
OUTPUT :
2022-23
OOP with Java Lab /21CSL35
PROGRAM :5
PROGRAM:5A
OUTPUT:
2022-23
OOP with Java Lab /21CSL35
PROGRAM:5B
Constructor Overloading
public class Constructor
{
int id;
String name;
Constructor()
{
System.out.println("This is Default constructor");
System.out.println("Student Id : "+id + "\nStudent Name : "+name);
}
Constructor(int i, String n)
{
System.out.println("This is Parameterized Constructor:");
id = i;
name = n;
System.out.println("Student Id : "+id + "\nStudent Name : "+name);
}
public static void main(String[] args)
{
Constructor s = new Constructor();
Constructor student = new Constructor(10, "David");
}
}
OUTPUT:
2022-23
OOP with Java Lab /21CSL35
PROGRAM :6
6. Develop a java application to implement currency converter (Dollar to INR, EURO to INR,
Yen to INR and vice versa), distance converter (meter to KM, miles to KM and vice versa),
time converter (hours to minutes, seconds and vice versa) using packages.
PROGRAM:
CurrencyC.java
package cc;
import java.util.*;
public class CurrencyC
{
double inr,usd;
double euro,yen;
Scanner in=new Scanner(System.in);
public void dollartorupee()
{
System.out.println("Enter dollars to convert
into Rupees:");usd=in.nextInt();
inr=usd*81.83;
System.out.println("Dollar ="+usd+" equal to
INR="+inr);System.out.println("\n");
}
public void rupeetodollar()
{
System.out.println("Enter Rupee to convert into Dollars:");
inr=in.nextInt();
usd=inr/81.83;
System.out.println("Rupee ="+inr+"equal to Dollars="+usd);
}
public void eurotorupee()
{
System.out.println("Enter Euro to convert into Rupees:");
euro=in.nextInt();
inr=euro*79.06;
System.out.println("Euro ="+euro+" equal to INR="+inr);
System.out.println("\n");
}
public void rupeetoeuro()
{
System.out.println("Enter Rupees to convert into Euro:");
inr=in.nextInt();
euro=(inr/79.06);
System.out.println("Rupee ="+inr +"equal to Euro="+euro);
System.out.println("\n");
}
2022-23
OOP with Java Lab /21CSL35
DistaceC.Java
package dc;
import java.util.*;
public class DistanceC
{
double km,m,miles;
Scanner in=new Scanner(System.in);
public void mtokm()
{
System.out.println("Enter the
distance in meter");
m=in.nextDouble();
km=(m/1000);
System.out.println(m+"m" +" is equal to
"+km+"km");System.out.println("\n");
}
public void kmtom()
{
System.out.println("Enter the distance in Kilometer");
km=in.nextDouble();
m=km*1000;
System.out.println(km+"km" +" is equal to "+m+"m");
System.out.println("\n");
}
public void milestokm()
{
System.out.println("Enter the distance in miles");
miles=in.nextDouble();
km=(miles*1.60934);
System.out.println(miles+"miles" +" is equal to "+km+"km");
System.out.println("\n");
}
2022-23
OOP with Java Lab /21CSL35
TimeC.java
package tc;
import java.util.*;
public class TimeC
{
int hours,seconds,minutes;
Scanner in = new Scanner(System.in);
public void hourstominutes()
{
System.out.println("Enter the no of Hours to convert into minutes");
hours=in.nextInt();
minutes=(hours*60);
System.out.println("Minutes: " + minutes);
}
public void minutestohours()
{
System.out.println("Enter the no of Minutes to convert into Hours");
minutes=in.nextInt();
hours=minutes/60;
System.out.println("Hours: " + hours);
}
public void hourstoseconds()
{
System.out.println("Enter the no of Hours to convert into Seconds");
hours=in.nextInt();
seconds=(hours*3600);
System.out.println("Seconds: " + seconds);
}
public void secondstohours()
{
System.out.println("Enter the no of Seconds to convert into Hours");
seconds=in.nextInt();
hours=seconds/3600;
System.out.println(seconds+"seconds"+ " is equal to "+hours+"hour");
}
}
Main Class
import cc.*;
import dc.*;
2022-23
OOP with Java Lab /21CSL35
import tc.*;
public class Main
{
public static void main(String args[])
{
CurrencyC obj=new CurrencyC();
DistanceC obj1=new DistanceC();
TimeC obj2=new TimeC();
obj.dollartorupee();
obj.rupeetodollar();
obj.eurotorupee();
obj.rupeetoeuro();
obj.yentoruppe();
obj.ruppetoyen();
obj1.mtokm();
obj1.kmtom();
obj1.milestokm();
obj1.kmtomiles();
obj2.hourstominutes();
obj2.minutestohours();
obj2.hourstoseconds();
obj2.secondstohours();
}
}
OUTPUT:
Enter dollars to convert into Rupees:1
Dollar =1.0 equal to INR=81.83
2022-23
OOP with Java Lab /21CSL35
PROGRAM :7
7. Write a program to generate the resume. Create 2 Java classes Teacher (data: personal
information, qualification, experience, achievements) and Student (data: personal information,
result, discipline) which implements the java interface Resume with the method biodata().
PROGRAM:
interface Resume
{
void biodata();
}
class Teacher implements Resume
{
String name,qualification,achievements;
float experience;
public void biodata()
{
name="Sarah Muskan";
qualification="M.Tech";
achievements="Q1 publication";
experience=1.6f;
System.out.println("Teacher Resume");
System.out.println("Name : " +name);
System.out.println("Qualification : "+qualification);
System.out.println("Achievements : "+achievements);
System.out.println("Experience : "+experience);
}
}
class Student implements Resume
{
String name,discipline;
float result;
public void biodata()
{
name="Rahul Sharma";
result=9.8f;
discipline="Computer Science and Engineering";
System.out.println("");
System.out.println("Student Resume");
System.out.println("Name : " +name);
System.out.println("Result : "+result+" cgpa");
System.out.println("Discipline : "+discipline);
}
}
OUTPUT:
2022-23
OOP with Java Lab /21CSL35
PROGRAM :8
8. Write a Java program that implements a multi-thread application that has three threads. First
thread generates a random integer for every 1 second; second thread computesthe square of the
number and prints; third thread will print the value of cube of the number.
Aim: Demonstrate creation of threads using Thread class and Runnable interface, multi-
threaded programming.
PROGRAM :
import java.util.Random;
class Square extends Thread
{
int x;
Square(int n)
{
x = n;
}
public void run()
{
int sqr = x * x;
System.out.println("Square of " + x + " = " + sqr );
}
}
s.start();
Cube c = new Cube(randomInteger);
c.start();
try
{
Thread.sleep(1000);
}
catch (InterruptedException ex)
{
System.out.println(ex);
}
}
}
}
}
}
OUTPUT:
2022-23
OOP with Java Lab /21CSL35
PROGRAM :9
9. Write a program to perform string operations using ArrayList. Write functions for the
following a. Append - add at end b. Insert – add at particular index c. Search d. List all string
starts with given letter.
import java.util.*;
public class ArrayL
{
ArrayList<String> list=new ArrayList<String>(); //Creating arraylist
public void arraydisplay()
{
list.add("CSE");//Adding object in arraylist
list.add("ISE");
list.add("ME");
System.out.println("ArrayList element are");
System.out.println(list);
System.out.println("");
}
public void appendatend()
{
System.out.println("Enter the element to append at end");
Scanner scob1=new Scanner(System.in);
String ele=scob1.next();
list.add(ele);
System.out.println(list);
System.out.println("");
}
public void insertatpos()
{
System.out.println("Enter the position and element to insert");
Scanner scob1=new Scanner(System.in);
int posind=scob1.nextInt();
String ele=scob1.next();
list.add(posind,ele);
System.out.println(list);
System.out.println("");
}
public void searchele()
{
System.out.println("Enter the Array element to search");
Scanner scobj=new Scanner(System.in);
String arele=scobj.next();
int in=list.indexOf(arele);
if(in==-1)
{
System.out.println("Element not found");
}
2022-23
OOP with Java Lab /21CSL35
else
{
System.out.println("Element found at "+in);
}
}
void print()
{
Scanner nip=new Scanner(System.in);
System.out.println("Enter the starting charecter to print strings");
char inputc=nip.next().charAt(0);
String strc=Character.toString(inputc);
System.out.println("String starting with character "+strc);
for(int i=0;i<list.size();i++)
{
if(list.get(i).startsWith(strc))
{
System.out.println(list.get(i));
}
}
}
public static void main(String args[])
{
ArrayL obj=new ArrayL();
obj.arraydisplay();
obj.appendatend();
obj.insertatpos();
obj.searchele();
obj.print();
}
}
OUTPUT:
2022-23
OOP with Java Lab /21CSL35
PROGRAM :10
10. Write a Java program to read two integers a and b. Compute a/b and print, when bis not zero.
Raise an exception when b is equal to zero.
Aim: Exception handling in java, introduction to throwable class, throw, throws, finally
import java.util.*;
public class TryP
{
int c;
void div(int a,int b)
{
try
{
c=a/b;
System.out.println("Result="+c);
}
catch(ArithmeticException e)
{
System.out.println("Cannot divide by zero");
}
}
public static void main(String args[])
{
TryP obj=new TryP();
Scanner in=new Scanner(System.in);
System.out.println("Enter the values of a and b");
int no1=in.nextInt();
int no2=in.nextInt();
obj.div(no1,no2);
}
}
OUTPUT:
2022-23
OOP with Java Lab /21CSL35
PROGRAM :11
11. Write a java program that reads a file name from the user, displays information about whether
the file exists, whether the file is readable, or writable, the type of file and the length of the file
in bytes
import java.io.File;
import java.util.Scanner;
class FileP
{
public static void main(String args[ ])
{
Scanner obj=new Scanner(System.in);
String fname=obj.next();
File f1 = new File(fname);
System.out.println("File Name: " + f1.getName());
f1.setWritable(false);
System.out.println(f1.exists() ? "File exists" : "File does not exist");
System.out.println(f1.canWrite() ? "File is writeable" : "File is not writeable");
System.out.println(f1.canRead() ? "File is readable" : "File is not readable");
String fileName = f1.toString();
int index = fileName.lastIndexOf('.');
if(index > 0)
{
String type = fileName.substring(index + 1);
System.out.println("File type is " + type);
}
else
{
System.out.println("File doesn't have type");
}
System.out.println("File size: " + f1.length() + " Bytes");
}
}
OUTPUT:
2022-23
OOP with Java Lab /21CSL35
PROGRAM :12
12. A. Develop an applet that displays a simple message in center of the screen.
PROGRAM:
import java.applet.Applet;
import java.awt.Graphics;
/*
<applet code="AppletP.class" width="300" height="300">
</applet>
*/
public class AppletP extends Applet
{
public void paint(Graphics g)
{
g.drawString("Welcome to applet",100,150);
}
}
OUTPUT:
2022-23
OOP with Java Lab /21CSL35
import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
t=new JTextField();
t.setBounds(30,10,165,35);
b0=new JButton("0");
b0.setBounds(30,50,45,40);
b1=new JButton("1");
b1.setBounds(70,50,45,40);
b2=new JButton("2");
b2.setBounds(110,50,45,40);
b3=new JButton("3");
b3.setBounds(150,50,45,40);
b4=new JButton("4");
b4.setBounds(30,90,45,40);
b5=new JButton("5");
b5.setBounds(70,90,45,40);
b6=new JButton("6");
b6.setBounds(110,90,45,40);
b7=new JButton("7");
b7.setBounds(150,90,45,40);
b8=new JButton("8");
2022-23
OOP with Java Lab /21CSL35
b8.setBounds(30,130,45,40);
b9=new JButton("9");
b9.setBounds(70,130,45,40);
bdot=new JButton(".");
bdot.setBounds(110,130,45,40);
badd=new JButton("+");
badd.setBounds(150,130,45,40);
bsub=new JButton("-");
bsub.setBounds(30,170,45,40);
bmul=new JButton("*");
bmul.setBounds(70,170,45,40);
bdiv=new JButton("/");
bdiv.setBounds(110,170,45,40);
beq=new JButton("=");
beq.setBounds(150,170,45,40);
bclr=new JButton("CLR");
bclr.setBounds(30,210,165,40);
frame.add(t);
frame.add(b0);
frame.add(b1);
frame.add(b2);
frame.add(b3);
frame.add(b4);
frame.add(b5);
frame.add(b6);
frame.add(b7);
frame.add(b8);
frame.add(b9);
frame.add(bdot);
frame.add(badd);
frame.add(bsub);
frame.add(bmul);
frame.add(bdiv);
frame.add(beq);
frame.add(bclr);
b0.addActionListener(this);
b1.addActionListener(this);
b2.addActionListener(this);
b3.addActionListener(this);
b4.addActionListener(this);
b5.addActionListener(this);
b6.addActionListener(this);
b7.addActionListener(this);
b8.addActionListener(this);
b9.addActionListener(this);
badd.addActionListener(this);
bsub.addActionListener(this);
2022-23
OOP with Java Lab /21CSL35
bmul.addActionListener(this);
bdiv.addActionListener(this);
bdot.addActionListener(this);
beq.addActionListener(this);
bclr.addActionListener(this);
}
public void actionPerformed(ActionEvent e)
{
if(e.getSource()==bclr)
{
t.setText("");
}
if(e.getSource()==b0)
{
t.setText(t.getText().concat("0"));
}
if(e.getSource()==b1)
{
t.setText(t.getText().concat("1"));
}
if(e.getSource()==b2)
{
t.setText(t.getText().concat("2"));
}
if(e.getSource()==b3)
{
t.setText(t.getText().concat("3"));
}
if(e.getSource()==b4)
{
t.setText(t.getText().concat("4"));
}
if(e.getSource()==b5)
{
t.setText(t.getText().concat("5"));
}
if(e.getSource()==b6)
{
t.setText(t.getText().concat("6"));
}
if(e.getSource()==b7)
{
t.setText(t.getText().concat("7"));
}
if(e.getSource()==b8)
{
t.setText(t.getText().concat("8"));
}
if(e.getSource()==b9)
{
2022-23
OOP with Java Lab /21CSL35
t.setText(t.getText().concat("9"));
}
if(e.getSource()==bdot)
{
t.setText(t.getText().concat("."));
}
if(e.getSource()==badd)
{
a=Double.parseDouble(t.getText());
op=1;
t.setText("");
}
if(e.getSource()==bsub)
{
a=Double.parseDouble(t.getText());
op=2;
t.setText("");
}
if(e.getSource()==bmul)
{
a=Double.parseDouble(t.getText());
op=3;
t.setText("");
}
if(e.getSource()==bdiv)
{
a=Double.parseDouble(t.getText());
op=4;
t.setText("");
}
if(e.getSource()==beq)
{
b=Double.parseDouble(t.getText());
switch(op)
{
case 1:res=a+b;
break;
case 2:res=a-b;
break;
case 3:res=a*b;
break;
case 4:res=a/b;
break;
}
t.setText(""+res);
}
}
}
2022-23
OOP with Java Lab /21CSL35
OUTPUT:
2022-23