on
[Jump2Java] 05장 객체지향 프로그래밍 06
[Jump2Java] 05장 객체지향 프로그래밍 06
Jump2Java 05장. 객체지향 프로그래밍
- 다형성
- 추상클래스
다형성
하나의 객체가 여러개의 자료형 타입을 가질 수 있는 것
instanceof: 특정 객체가 특정 클래스의 객체인지를 조사할 때 사용되는 자바의 내장 키워드
public class Bouncer { public void barkAnimal(Animal animal) { if (animal instanceof Tiger) { // animal 객체가 new Tiger로 만들어진 객체인가? System.out.println("어흥"); } else if (animal instanceof Lion) { // animal 객체가 new Lion로 만들어진 객체인가? System.out.println("으르렁"); } }
인터페이스는 일반 클래스와는 달리 extends 를 이용하여 여러개의 인터페이스를 동시에 상속할 수 있는 다중 상속이 지원된다. (일반 클래스는 단일상속만 가능하다.)
추상클래스
클래스가 설계도라면 추상클래스는 미완성 설계도이다.
추상클래스로 만들기 위해서는 class 앞에 abstract 추가해야 한다.
인터페이스 메소드와 같은 역할을 하는 메소드 역시 abstract 추가해야 한다.
public abstract class Predator extends Animal { public abstract String getFood(); }
from http://yoonveloping.tistory.com/29 by ccl(A) rewrite - 2021-09-14 01:00:56