Java Program to Implement Hierarchical Inheritance (Shape -> Rectangle & Triangle)

Write a Java program to implement hierarchical inheritance (Shape -> Rectangle & Triangle)

Write a Java program to implement method overriding for following inheritance : (assume suitable data )

abstract class : Shape
dim1, dim2, disp( )
abstract area ( )

class: Rectangle
getd( ), area ( )

class: Triangle
getd( ), area ( )



Source Code
import java.lang.*;
import java.io.*;

abstract class Shape {
	
	int dim1,dim2;
	
	void getd()throws IOException {
		BufferedReader br = new BufferedReader (new InputStreamReader(System.in));
		System.out.println ("Enter Value of 1st Dimension");
		dim1=Integer.parseInt(br.readLine());
		System.out.println ("Enter Value of 2nd Dimension");
		dim2=Integer.parseInt(br.readLine());
	}
	abstract void area();
}

class Rectangle extends Shape {
	
	void getd() throws IOException {
		
		super.getd();
	}
	
	void area() {
		
		int a=dim1*dim2;
		System.out.println ("Area of Rectangle = "+a);
	}
}

class Triangle extends Shape
{
	void getd() throws IOException {
		
		super.getd();
	}
	
	void area() {
		
		double b=(1*dim1*dim2)/2;
		System.out.println ("Area of Triangle = "+b);
	}
}

public class MethodOverriding {

	public static void main(String[] args) throws IOException {
	
		Rectangle R = new Rectangle();
		R.getd();
		R.area();
		
		Triangle T = new Triangle();
		T.getd();
		T.area();
	}
}
Output
Enter Value of 1st Dimension
42
Enter Value of 2nd Dimension
12
Area of Rectangle = 504
Enter Value of 1st Dimension
23
Enter Value of 2nd Dimension
52
Area of Triangle = 598.0