[JAVA] 인터페이스 심화: 다중 상속, 다중 구현
·
BackEnd/JAVA
1. 추상 클래스보다 인터페이스를 주로 사용하는 이유자바에서 인터페이스는 추상 클래스와 비슷한 역할을 하지만, 특정 상황에서는 더 유연하고 효과적인 설계 방식을 제공합니다. 특히, 다중 구현과 같은 특성 때문에 추상 클래스보다 인터페이스를 더 자주 사용하는 경향이 있습니다. 그 이유는 다음과 같습니다.1.1 다중 구현이 가능하다자바는 클래스 간의 다중 상속을 허용하지 않습니다. 즉, 한 클래스는 오직 하나의 부모 클래스만 상속받을 수 있습니다. 하지만 인터페이스는 여러 개를 동시에 구현할 수 있습니다. 이를 통해 클래스가 여러 역할을 동시에 가질 수 있게 되어 설계의 유연성이 크게 증가합니다.// 인터페이스 1interface Drivable { void drive();}// 인터페이스 2inter..
[JAVA] 자바 부모클래스 및 인터페이스 심화: 오버라이딩과 메서드 동작
·
BackEnd/JAVA
1. 자바 부모 클래스와 인터페이스 메서드를 오버라이딩 하지 않게 하는 방법자바에서 인터페이스나 부모 클래스의 메서드를 오버라이딩하지 않게 하려면 final 키워드를 활용하는 것이 핵심입니다. 하지만, 각각의 경우에서 어떻게 적용되는지 좀 더 자세히 설명드리겠습니다.1.1 부모 클래스 메서드를 오버라이딩 하지 않게 하려면부모 클래스에서 자식 클래스가 특정 메서드를 오버라이딩하지 못하게 하려면, 해당 메서드를 final로 선언해야 합니다. final로 선언된 메서드는 자식 클래스에서 오버라이딩할 수 없습니다.class Parent { public final void someMethod() { // 이 메서드는 오버라이딩 불가 }}class Child extends Parent { ..