본문 바로가기

다형성2

좋은 객체지향이란? 객체지향이란? 현실 세계에서 객체란 물질적으로 존재하는 어떤 사물이나 관념을 의미하나, 코드에서 객체는 메모리에 할당된 클래스(인스턴스) 를 의미한다. 따라서 객체지향적이라는 의미는, 클래스가 하나의 객체, 즉, 개념을 구성한다고 생각하면 편하다. 예를 들어보자. 자동차라는 객체는 어떤 차종 하나를 가르키지 않는다. 네 바퀴가 달리고 사람이나 물건을 실을수 있으며 엔진으로 구동되는 이동수단이라는 개념 그 자체를 의미한다. 자동차의 개념 1. 네바퀴 -- 속성 2. 물건이나 사람을 운송 -- 기능 3. 엔진으로 구동 -- 속성 이를 코드로 치환하면 다음과 같이 된다. public class Car{ private int wheel = 4; // 바퀴의 갯수 private String powerSource .. 2023. 5. 10.
자바(java)의 객체의 다형성 다형성 클래스는 하나의 객체가 여러 자료형 타입을 가질수 있는데, 이를 다형성이라고 부른다. 부모 클래스의 타입을 자식 클래스가 가질수 있다. 자바의 모든 클래스는 Object 라는 클래스를 상속한다. 따라서 이를 이용하면 모든 객체 타입을 전달할수 있고, 따라서 프로그래밍이 더 유연해질수 있다. 상속의 개념을 생각해보자. 부모(상위), 자식(하위) 클래스라고 표현해서 헷갈리기 쉽지만, 실제로는 자식 클래스가 더 큰 개념이다. 부모 클래스의 모든 특징을 계승하고, 거기에 자신만의 속성과 메소드를 추가한 것이 자식 클래스다. 굳이 표현하자면 보강형이라고 봐도 무방하다. 따라서 부모 클래스의 기능을 자식 클래스도 그대로 가지고 있기 때문에, 자식 클래스 역시 부모 클래스 타입을 가질수 있따. 1.업캐스팅 자.. 2022. 11. 29.