다형성(Polymorphism) 하나의 메소드나 클래스가 다양한 방법으로 동작하는 것을 의미한다. 혹은 하나의 객체가 여러가지 타입을 가질수 있는것을 말한다. 두 의미 달라보이지만 말만 다르지 똑같은 결과를 말하고 있는 것이다. 오버로딩 또한 다형성의 예라고 볼 수 있는데 이점에 대해서는 이견이 존재한다. 클래스 다형성 상속관계에서 상위타입의 변수로 하위타입을 참조할 수 있는 것을 다형성이라고 한다. 즉 부모 클래스 데이터타입의 변수로 자식 클래스 타입의 인스턴스를 참조할 수 있다. class Parent { public void superObj() { System.out.println("부모 클래스"); } } class Child { public void superObj() { System.out.p..