다형성

song yuheon·2023년 8월 27일
0

Java

목록 보기
16/46
post-thumbnail

정의:

  • 객체가 여러 형태를 가질 수 있는 성질을 의미한다.

참조 변수의 타입 변환:

  1. 자동 타입 변환:

    • 자식 객체를 부모 타입의 변수로 참조할 때 발생한다.
    • 부모타입 변수 = 자식타입객체;
    • 자식 객체는 부모 객체의 멤버를 상속받으므로, 부모 타입으로 자동 변환된다.
  2. 강제 타입 변환:

    • 자식타입 변수 = (자식타입) 부모타입객체;
    • 부모 타입의 객체를 자식 타입의 변수로 참조하려면 강제로 타입 변환해야 한다.
    • 부모 타입의 객체가 자식 타입으로 이미 자동 타입 변환된 후에만, 다시 자식 타입으로 변환할 수 있다.
    • 자동 타입 변환되지 않은 부모 객체를 직접 자식 타입으로 변환하려고 하면 오류 발생한다.

instance of 연산자:

  • 객체의 실제 타입을 확인하기 위한 연산자이다.
  • 다형성 때문에 어떤 객체가 실제로 어떤 타입인지 확인하기 위해 사용한다.
  • 사용 예: System.out.println(p instanceof Parent);
    • p 객체가 Parent 클래스의 인스턴스인지 확인한다.
profile
backend_Devloper

0개의 댓글