목록2024/09/19 (3)
코딜기
instanceof란?instanceof는 객체가 특정 클래스의 인스턴스인지 확인할 때 사용됩니다.다형성이 적용된 경우 부모 타입의 변수에 저장된 객체가 실제로 어떤 타입인지 확인하는 데 유용합니다.instanceof 사용public void sayHello(Animal ani) { if(ani instanceof Dog) { System.out.println("강아지"); } else if(ani instanceof Cat) { System.out.println("고양이"); } else if(ani instanceof Duck) { System.out.println("오리"); }}sayHello 메서드는 다형성이 적용된 매개변수를 받습니다...
다형성의 타입 캐스팅 (Type Casting)다형성은 객체 관리를 쉽게 해 주지만, 주의할 점도 있습니다.부모 타입으로는 자식 클래스의 모든 정보를 확인할 수 없다는 한계가 있습니다.객체 생성과 배열 사용에서의 다형성부모 타입 변수에 자식 객체를 생성했습니다.public class Parent { public int n1; void method1() {} void method2() {}}public class Child extends Parent { public int n2; @override void method2() {} void method3() {}}아래 코드를 보면 부모 클래스가 물려준 필드와 메서드는 정상적으로 호출되며, 자식이 오버라이드한 메서드도 사용..
다형성(Polymorphism)이란?다형성이란 하나의 객체가 여러 가지 타입으로 사용되는 것을 의미합니다.부모 타입 변수에 어떠한 자식 객체든 들어갈 수 있습니다.다형성은 상속을 전제 조건으로 합니다.객체 생성과 배열 사용에서의 다형성아래 그림을 보면 Animal이라는 부모 클래스가 있고, Dog, Cat, Duck 클래스가 존재합니다.모든 자식 클래스는 부모가 물려준 sound()라는 메서드를 본인의 클래스에 맞게 재정의(override)해서 사용하고 있습니다.위 사진을 참고하였을 때, 다형성이 적용되지 않았을 때는 아래와 같이 참조 변수의 타입을 객체에 맞게 작성해 주어야 합니다.Dog dog = new Dog();Cat cat = new Cat();Duck duck = new Duck();또한 각자..