상속은 객체지향 프로그래밍에서 중요한 개념 중 하나로, 기존의 클래스를 확장하여 새로운 클래스를 정의하는데 사용된다. 자바에서는 다음과 같은 특징을 가지고 있다:
자바에서는 extends 키워드를 사용하여 클래스를 상속한다. 구체적인 형태는 다음과 같다:
class 자식클래스명 extends 부모클래스명 {
// 자식 클래스의 필드와 메소드 정의
}
다음은 자바에서 상속을 이해하기 위한 예제 코드이다. Animal 클래스를 확장하여 Dog 클래스를 정의하는 예제이다.
class Animal {
String name;
public void eat() {
System.out.println(name + " is eating.");
}
}
class Dog extends Animal {
public void bark() {
System.out.println(name + " is barking.");
}
}
public class Main {
public static void main(String[] args) {
Dog dog = new Dog();
dog.name = "Buddy";
dog.eat(); // 상위 클래스의 메소드 호출
dog.bark(); // 자식 클래스의 메소드 호출
}
}
위의 예제에서는 Animal 클래스를 상속하여 Dog 클래스를 정의하고 있다. Dog 클래스는 Animal 클래스의 name 필드와 eat() 메소드를 상속받았다. 또한 Dog 클래스에는 bark()라는 메소드가 추가되어 있다.