Upload
vamsirathan
View
8
Download
0
Embed Size (px)
DESCRIPTION
inheritance
Citation preview
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");
}
}
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");
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");
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;
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 {
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;
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");
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;
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){
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);
}
}
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);
}
}