오버라이딩
-
[JAVA] 다형성(polymorphism)과 다운 캐스팅(downcasting)Language/Java 2021. 6. 5. 23:16
다형성(polymorphism) 하나의 코드가 여러 자료형으로 구현되어 실행되는 것 같은 코드에서 여러 다른 결과가 나온다. 객체지향 프로그래밍의 가장 큰 특징 중 하나이다. 다형성을 사용하면 유연하고 확장성있고, 유지보수가 편리한 프로그램을 개발할 수 있다. 다형성 예시 다형성을 사용하는 경우 상속과 메서드 재정의를 활용하여 확장성 있는 프로그램을 만들 수 있다. 다른 동물을 추가하는 경우 공통의 Animal클래스에서 상속을 받아 추가적으로 필요한 부분만 구현을 할 수 있다. 여러 클래스를 하나의 타입(상위 클래스)로 핸들링할 수 있다. 상속을 사용할 때? IS-A관계(is a relationship : inheritance) 일반적인 개념과 구체적인 개념과의 관계 상위 클래스: 하위 클래스보다 일반적..
-
[JAVA] 클래스 상속Language/Java 2021. 6. 5. 22:26
클래스 상속 새로운 클래스를 정의할 때 이미 구현된 클래스를 상속받아서 속성이나 기능을 확장하여 클래스를 구현한다. 이미 구현된 클래스보다 더 구체적인 기능을 가진 클래스를 구현해야할 때 기존 클래스를 상속 상속하는 클래스(super class), 상속받는 클래스(sub class) 클래스 상속 문법 class B extends A{ } extends 키워드 뒤에는 하나의 클래스만 올 수 있다. 클래스 B는 A클래스를 상속 받았음을 알 수 있다. 자바는 단일 상속만을 지원한다. 상속을 구현하는 경우 상위 클래스는 하위 클래스보다 더 일반적인 개념과 기능을 가진다. 하위 클래스는 상위 클래스보다 더 구체적인 개념과 기능을 가진다. 하위 클래스가 상위 클래스의 속성과 기능을 확장한다는 의미 protected..