클래스 형변환 ( Animal , Rabbit , Tiger ) = 여러 타입의 클래스를 하나의 클래스로 관리가 가능하다

동적 바인딩 = 컴파일 당시에는 해당 타입의 메소드와 연결 되어 있다가 런타임 시에는 실제 객체가 가진 오버라이딩 된 메소드로 바인딩이 바뀌어 동작하는것을 의미한다

( 점심 먹고 졸다가 주석이 휴먼졸림체로 적혀버렸습니다 )

추상클래스와 인터페이스

추상클래스 = 구현부가 없는 클래스

추상클래스를 인스턴스로 만들 수 없음

추상클래스를 사용하려면 다형성을 이용하여 추상클래스를 상속받은 하위클래스를 이용하여 인스턴스 생성.

추상클래스의 추상메소드는 오버라이딩에 의한 강제성이 부여됨.

장점 : 필수 기능을 정의하여 강제성을 부여해 개발 시 일관된 인터페이스를 제공함

abstract class : 추상 클래스

abstract void abstractMethod() : 추상 메소드

extends Product : 추상 클래스(Product) 를 상속 받음

@Override public void abstractMethod() : 구현을 해도되고 안해도 됨.

구현 안함 = 다음 상속 받을 놈 한테 책임 전가

인터페이스 = 모든 메소드가 추상메소드인 클래스

인터페이스를 상속받는 클래스는

인터페이스에 정의된 추상 메소드를 반드시 반드시 절대로 절대로 구현 해야하는 책임이 있다.

API ( Application Programming Interface )

Book 클래스 Object 함수인 toString, equals , hashcode 오버라이딩(재정의)

 

'더존 노션 필기 옮기기 > Java' 카테고리의 다른 글

Java 아직 미작성한 챕터  (1) 2022.08.30
Java 8일차 제네릭, 컬렉션  (1) 2022.08.30
Java 6일차 객체배열, 상속  (0) 2022.08.30
Java 5일차 객체  (0) 2022.08.30
Java 4일차 배열  (0) 2022.08.30

+ Recent posts