Assignmnet polymorphism
Assignmnet polymorphism
Subject OOP
Assignment Assignment 03
Date Nov 15th , 2024
Submitted to:
Moderator Ms, Sajida Kalsoom
Page | 1
Question no 01:
// Create an inheritance hierarchy to represent various types of packages. Use Package as the super class
// of the hierarchy, then include classes TwoDayPackage and OvernightPackage that derive from Package.
class packages{
public packages() {
public packages(String sname, String rname, String saddress, String raddress, double weight,double c)
{
Sname = sname;
Rname = rname;
Saddress = saddress;
Raddress = raddress;
if (weight>0) {
this.weight = weight;
else{
weight=0;
Page | 2
if (costperounce>0) {
this.costperounce=c;
else{
costperounce=0;
Sname = sname;
Rname = rname;
Saddress = saddress;
Raddress = raddress;
if (weight>0) {
this.weight = weight;
Page | 3
else{
System.out.println("Invalid Entry");
if(costperounce>0)
this.costperounce = costperounce;
else{
System.out.println("Invalid Entry");
return costperounce;
return Sname;
return Rname;
return Saddress;
Page | 4
public String getRaddress() {
return Raddress;
return weight;
@Override
return "packages [Sname=" + Sname + ", Rname=" + Rname + ", Saddress=" + Saddress + ",
Raddress=" + Raddress
Page | 5
class TwoDayPackage extends packages{
public TwoDayPackage() {
public TwoDayPackage(String sname, String rname, String saddress, String raddress, double weight,
double c,
double flatfee) {
this.flatfee = flatfee;
return flatfee;
this.flatfee = flatfee;
@Override
Page | 6
public String toString() {
return "TwoDayPackage [Sname=" + Sname + ", Rname=" + Rname + ", Saddress=" + Saddress + ",
Raddress="
+ Raddress + ", weight=" + weight + ", costperounce=" + costperounce + ", flatfee=" + flatfee +
"]";
this.additonalfee = additonalfee;
public OvernightPackage(String sname, String rname, String saddress, String raddress, double weight,
double c,
double additonalfee) {
this.additonalfee = additonalfee;
return additonalfee;
Page | 7
public void setAdditonalfee(double additonalfee) {
this.additonalfee = additonalfee;
@Override
return "OvernightPackage [Sname=" + Sname + ", Rname=" + Rname + ", Saddress=" + Saddress + ",
Raddress="
+ "]";
Page | 8
OvernightPackage overnightPackage = new OvernightPackage("ali", "Rana", "118 G-13.4", "567 Pine
St", 8, 4.0, 20);
// System.out.println(regularPackage.toString());
System.out.println(twoDayPackage.calculateShippingCost());
System.out.println(overnightPackage.calculateShippingCost());
System.out.println(twoDayPackage.toString());
System.out.println(overnightPackage.toString());
Question no02:
abstract class Person {
public Person(String n) {
this.name = n;
this.name = n;
return name;
Page | 9
}
super(n);
this.CGPA = CGPA;
this.CGPA = CGPA;
return CGPA;
@Override
super(name);
Page | 10
this.numberOfPublications = n;
this.numberOfPublications = n;
return numberOfPublications;
@Override
Page | 11
Professor professor = (Professor) people[1];
professor.setNumberOfPublications(100);
System.out.println(professor.getName() +
+ professor.isOutstanding());
Question no 03:
Page | 12
this.val1 = val1;
}
@Override
public String toString() {
return "Initial Value: " + val1 + " Converted Value: " + val2;
}
public Litretogallon(double v) {
super(v);
}
@Override
public void compute() {
Page | 13
val2 = val1 * 0.264172;
}
}
public ForentoCel(double v) {
super(v);
}
@Override
public void compute() {
val2 = (val1 - 32) * 5 / 9;
}
}
@Override
public void compute() {
val2 = val1 * 0.3048;
}
}
Page | 14
public class task3 {
public static void main(String[] args) {
litersToGallons.compute();
fahrenheitToCelsius.compute();
feetToMeters.compute();
System.out.println(litersToGallons.toString());
System.out.println(fahrenheitToCelsius.toString());
System.out.println(feetToMeters.toString());
Page | 15