반응형
extends
extends는 상속의 대표적인 형태이다.
모든 선언/정의를 부모가 하며, 자식은 오버라이딩 할 필요 없이 부모의 메소드/변수를 그대로 사용할 수 있다.
그리고 자바는 다중 상속을 지원하지않는다.
class Vehicle {
protected int speed = 3;
public int getSpeed(){
return speed;
}
public void setSpeed(int speed){
this.speed = speed;
}
}
class Car extends Vehicle{
public void printspd(){
System.out.println(speed);
}
}
public class ExtendsSample {
public static main (String[] args){
Car A = new Car();
System.out.println(A.getSpeed());
A.printspd();
}
}
implements
부모는 선언만 하며, 반드시 자식이 정의를 오버라이딩 해서 사용한다.
해당 인터페이스에 있는 프로퍼티 및 메소드를 전부 가지고 있거나 구현해야 한다.
위에서 자바는 다중상속을 지원하지 않는다 대신 implenments(인터페이스) 가 등장했다.
interface TestInterface{
public static int num = 8;
public void fun1();
public void fun2();
}
class InterfaceExam implements TestInterface{
@Override
public void fun1(){
System.out.println(num);
}
@Override
public void fun2() {
}
}
public class InterfaceSample{
public static void main(String args[]){
InterfaceExam exam = new InterfaceExam();
exam.fun1();
}
}
참고자료
참고: https://velog.io/@hkoo9329/%EC%9E%90%EB%B0%94-extends-implements-%EC%B0%A8%EC%9D%B4
'Language > Java' 카테고리의 다른 글
변수의 타입 (0) | 2021.09.06 |
---|---|
자바란? (0) | 2021.09.06 |
GC 가비지 컬렉션 이란? (0) | 2021.07.05 |
프로세스와 스레드 차이점 (0) | 2021.06.30 |
Statement와 PreparedStatement 차이 (0) | 2021.06.30 |