13
package Abstracteg1; public abstract class Animal { public abstract double jumping(double distance); } package Abstracteg1; public class Kangaroo extends Animal { public double jumping(double distance) { return distance; } } package Abstracteg1; public class TestKangaroo { public static void main(String[] args) { // TODO Auto-generated method stub Animal animal=new Kangaroo(); double distance=animal.jumping(30.25); System.out.println("Kangaroo jumps:"+distance+" feet"); } } package Abstracteg2; public interface Animal { public abstract double jumping(double distance); } package Abstracteg2;

assn3

Embed Size (px)

DESCRIPTION

inheritance

Citation preview

Page 1: assn3

package Abstracteg1;

public abstract class Animal {

public abstract double jumping(double distance);

}

package Abstracteg1;

public class Kangaroo extends Animal {

public double jumping(double distance){

return distance;}

}

package Abstracteg1;

public class TestKangaroo {

public static void main(String[] args) {

// TODO Auto-generated method stubAnimal animal=new Kangaroo();double distance=animal.jumping(30.25);System.out.println("Kangaroo jumps:"+distance+" feet");

}

}

package Abstracteg2;

public interface Animal {public abstract double jumping(double distance);

}

package Abstracteg2;

public class TestTiger {public static void main(String[] args) {

Animal animal=new Tiger();double distance=animal.jumping(20.65);System.out.println("Tiger jumps:"+distance+" feet");

}

Page 2: assn3

}

package Abstracteg2;

public class Tiger implements Animal {public double jumping(double distance){

return distance;}

}

package comq;

class Container{

String ctrNumber;String isoCode;int size;

Container(String ctrNumber,String isoCode,int size) {

// TODO Auto-generated constructor stubthis.ctrNumber=ctrNumber;this.isoCode=isoCode;this.size=size;

}

public void display(){

System.out.println("Container Number:"+ctrNumber+"ISO code:"+isoCode+" Size:"+size);

}}

class ReeferContainer extends Container{

String coolingUnitName;ReeferContainer(String ctrNumber, String isoCode, int size,String

coolingUnitName) {

super(ctrNumber, isoCode, size);this.coolingUnitName=coolingUnitName;// TODO Auto-generated constructor stub

}

public void display(){

System.out.println("==================");System.out.println("Reefer Container Details");

Page 3: assn3

super.display();System.out.println("Cooling Unit Name:"+coolingUnitName);

}}

class HazardousContainer extends Container{

int imdgClass;String imdgCode;

HazardousContainer(String ctrNumber, String isoCode, int size, int imdgClass, String imdgCode)

{super(ctrNumber, isoCode, size);this.imdgClass=imdgClass;this.imdgCode=imdgCode;// TODO Auto-generated constructor stub

}

public void display(){

System.out.println("==================");System.out.println("Hazardous Container Details");super.display();System.out.println("Imdg class:"+imdgClass+" Imdg

Code:"+imdgCode);}

}

public class ContainerDetails {

public static void main(String args[]){

Container c =new Container("OOCG1234569","2OTG",20);c.display();

ReeferContainer r=new ReeferContainer("OGVG1234569","3df0",32,"FREEZER");

r.display();

HazardousContainer h=new HazardousContainer("ONGG1245269","6OTG",40,123,"DAN");

h.display();

/*c=r;c.display();*/ //runtime poly or DynamicMD

/*Container a=new ReeferContainer("OGVG1234569","3df0",32,"FREEZER");

Page 4: assn3

a.display();

Container d=new HazardousContainer("ONGG1245269","6OTG",40,123,"DAN");

d.display();*/ //Upcasting or DMD(implementing polymorphism)

}

}package comq1;

abstract class Container{

String ctrNumber;String isoCode;int size;

Container(String ctrNumber,String isoCode,int size) {

// TODO Auto-generated constructor stubthis.ctrNumber=ctrNumber;this.isoCode=isoCode;this.size=size;

}

public abstract void display();//with no implementation}

class ReeferContainer extends Container{

String coolingUnitName;ReeferContainer(String ctrNumber, String isoCode, int size,String

coolingUnitName) {

super(ctrNumber, isoCode, size);this.coolingUnitName=coolingUnitName;

}

public void display(){

System.out.println("==================");System.out.println("Reefer Container Details");

System.out.println("Container Number:"+ctrNumber+"ISO code:"+isoCode+" Size:"+size+"Cooling Unit Name:"+coolingUnitName);

}}

class HazardousContainer extends Container{

int imdgClass;

Page 5: assn3

String imdgCode;

HazardousContainer(String ctrNumber, String isoCode, int size, int imdgClass, String imdgCode)

{super(ctrNumber, isoCode, size);this.imdgClass=imdgClass;this.imdgCode=imdgCode;// TODO Auto-generated constructor stub

}

public void display(){

System.out.println("==================");System.out.println("Hazardous Container Details");

System.out.println("Container Number:"+ctrNumber+"ISO code:"+isoCode+" Size:"+size);

System.out.println("Imdg class:"+imdgClass+" Imdg Code:"+imdgCode);

}

}

public class ContainerDetails1 {

public static void main(String args[]){

/*ReeferContainer r=new ReeferContainer("OGVG1234569","3df0",32,"FREEZER");

r.display();*/ //problem comes when we try call subclass object with baseclass reference variablei.e; using DMD

//otherwise without abstract display() above statement can be implemented

Container a=new ReeferContainer("OGVG1234569","3df0",32,"FREEZER");

a.display();

Container d=new HazardousContainer("ONGG1245269","6OTG",40,123,"DAN");

d.display(); //Upcasting or DMD(implementing polymorphism)

}

}package comq2;

interface Container {

Page 6: assn3

public void display();}

class GeneralContainer implements Container{

String ctrNumber;String isoCode;int size;

GeneralContainer(String ctrNumber,String isoCode,int size) {

// TODO Auto-generated constructor stubthis.ctrNumber=ctrNumber;this.isoCode=isoCode;this.size=size;

}

public void display(){

System.out.println("Container Number:"+ctrNumber+"ISO code:"+isoCode+" Size:"+size);

}}

class ReeferContainer extends GeneralContainer{

String coolingUnitName;ReeferContainer(String ctrNumber, String isoCode, int size,String

coolingUnitName) {

super(ctrNumber, isoCode, size);this.coolingUnitName=coolingUnitName;

}

public void display(){

System.out.println("==================");System.out.println("Reefer Container Details");

System.out.println("Container Number:"+ctrNumber+"ISO code:"+isoCode+" Size:"+size+"Cooling Unit Name:"+coolingUnitName);

}}

class HazardousContainer extends GeneralContainer{

int imdgClass;String imdgCode;

Page 7: assn3

HazardousContainer(String ctrNumber, String isoCode, int size, int imdgClass, String imdgCode)

{super(ctrNumber, isoCode, size);this.imdgClass=imdgClass;this.imdgCode=imdgCode;// TODO Auto-generated constructor stub

}

public void display(){

System.out.println("==================");System.out.println("Hazardous Container Details");

System.out.println("Container Number:"+ctrNumber+"ISO code:"+isoCode+" Size:"+size);

System.out.println("Imdg class:"+imdgClass+" Imdg Code:"+imdgCode);

}

}

public class ContainerDetailsInt {

public static void main(String args[]){

/*ReeferContainer r=new ReeferContainer("OGVG1234569","3df0",32,"FREEZER");

r.display();*/ //problem comes when we try call subclass object with baseclass reference variablei.e; using DMD

//otherwise without abstract display() above statement can be implemented

/*GeneralContainer c =new GeneralContainer("OOCG1234569","2OTG",20);

c.display();

GeneralContainer a=new ReeferContainer("OGVG1234569","3df0",32,"FREEZER");

a.display();

GeneralContainer d=new HazardousContainer("ONGG1245269","6OTG",40,123,"DAN");

d.display(); //Upcasting or DMD(implementing polymorphism)*/

Container y=new GeneralContainer("OOCG1234569","2OTG",20);y.display();

Container z=new ReeferContainer("OGVG1234569","3df0",32,"FREEZER");

Page 8: assn3

z.display();Container x=new

HazardousContainer("ONGG1245269","6OTG",40,123,"DAN");x.display();

}

}

package comq2;

class Vehicle{ int speed=50; } class Bike4 extends Vehicle{ int speed=100; void display(){

System.out.println(speed);//will print speed of Bike System.out.println(super.speed);//will print speed of Vehicle

now } public static void main(String args[]){ Bike4 b=new Bike4(); b.display(); } } //http://www.javatpoint.com/super-keyword

package comq3;

public class Circle implements Shape {

public double getArea(int radius){

return 3.14*radius*radius;

}}

package comq3;

public interface Shape {public double getArea(int radius);

}

package comq3;

Page 9: assn3

public class TestCircle {public static void main(String args[]){

Shape shape=new Circle();double area=shape.getArea(10);System.out.println("Circle area is:"+area);

}

}

package instanceofeg;

class Animal{} class Dog1 extends Animal{//Dog inherits Animal public static void main(String args[]) { Dog1 d=new Dog1(); System.out.println(d instanceof Animal);//true } }

package instanceofeg;

class Simple1{ public static void main(String args[]){ Simple1 s=new Simple1(); System.out.println(s instanceof Simple1);//true } }

package instanceofeg;

interface Printable{} class A implements Printable{ public void a(){System.out.println("a method");} } class B implements Printable{ public void b(){System.out.println("b method");} } class Call{

void invoke(Printable p){//upcasting

if(p instanceof A){

Page 10: assn3

A a=(A)p;//Downcasting a.a();

} if(p instanceof B){

B b=(B)p;//Downcasting b.b();

}

} }//end of Call class class Test4{ public static void main(String args[]){ Printable p=new B(); Call c=new Call(); c.invoke(p); } }//http://www.javatpoint.com/downcasting-with-instanceof-operator

package RectArea;

public class Rectangle implements Shape {

public double getArea(int l,int w){

return l*w;}

}

package RectArea;

public interface Shape {public double getArea(int length,int width);}

package RectArea;

public class TestRectangle {

public static void main(String[] args) {// TODO Auto-generated method stubShape shape=new Rectangle();double area=shape.getArea(10, 20);System.out.println("Rectangle area is:"+area);

}

Page 11: assn3

}

package SquareArea;

public interface Shape {public double getArea(int length);

}

package SquareArea;

public class Square implements Shape {public double getArea(int l){

return l*l;}

}

package SquareArea;

public class TestSquare {

public static void main(String[] args) {// TODO Auto-generated method stubShape shape=new Square();double area=shape.getArea(20);System.out.println("Square area is:"+area);

}

}