예제 1) Figure 이라는 인터페이스에 면적을 구하는 area 라는 메소드를 만들고, Rect와 Triangle 이라는 클래스를 만들어 각각 인터페이스를 implement 하여 area 메소드를 각각 구현하기
알게 된 점: 인터페이스는 멤버 변수가 없고, 생성자도 없다. 멤버 변수와 생성자를 만들고 인터페이스를 구현하는 클래스를 만들어 오버라이딩 했더니 오류가 났다. 연습 예제가 총 3개 있었는데 첫번째에 오류가 나서 정신이 없어서 예제 2개를 못했다. 두개 더 해보아야겠다.
연습 코드 1)
abstract class Figure {
abstract int area(int a, int b);
}
class Rect extends Figure{
@Override
int area(int a, int b) {
return a*b;
}
}
class Triangle extends Figure{
@Override
int area(int a, int b) {
return (a*b)/2;
}
}
public class Prac {
public static void main(String[] args) {
Rect rect = new Rect();
int rectArea = rect.area(2,2);
System.out.println(rectArea);
Triangle triangle = new Triangle();
int triangleArea = triangle.area(4,4);
System.out.println(triangleArea);
}
}