추상클래스

    기초 #9. 인터페이스 Soldier (인터페이스 예제편)

    기초 #9. 인터페이스 Soldier (인터페이스 예제편)

    이전 글에서 적은 예제인 RemoteControl 인터페이스보다 더 기본에 충실한 예제를 적어보겠다. 1. 인터페이스 Soldier 코드 ▶인터페이스에는 기본적으로 상수와 추상메서드가 있다. ▶인터페이스에는 구현할 클래스들의 공통요소를 정의만 해놓는 역할을 한다. ▶군인의 공통점으로는 팔다리가 있고, 먹고,일하고,놀고,자고,경례를 한다는 점이다. public interface Soldier { final static int arm = 2; int Legs = 2;//컴파일과정에서 자동으로 final static이 붙어, 외부에서 변경 불가능하다. public abstract void eat(); void work();//abstract키워드를 쓰지않아도 추상메서드. why? body {}가 없으니까. v..

    기초 #8. 인터페이스 (+익명 구현 객체)

    기초 #8. 인터페이스 (+익명 구현 객체)

    인터페이스란 ▶하나의 틀, 규격을 말한다! ▶생성자가 없다. (인터페이스에서는 생성의 개념이 없다.) ▶추상클래스와 목적이 같은데, 즉 지정받거나 상속받는 클래스들의 공통요소를 묶기 위함이다. 하지만 추상클래스와는 차이점이 있다. ▶추상클래스와 인터페이스의 차이점 인터페이스 추상클래스 동작 가능성 (생성자 유무) (단, 추상메서드일 경우)동작 실행 개념이 없기 때문에 실질적인 동작구현(블록 {})이 없다. (생성자 X) 실행 개념이 있는 일반 메서드는 구현할 수 있지만 추상메서드의 경우, 동작구현을 하지 않는다.(블록 {}이 없다.) 재정의 강제성 인터페이스에서 정의한 요소를 하위클래스가 모두 재정의하도록 강제성을 부여한다. 재정의 강제성은 있지만 하위클래스가 필요한 요소를 선택해서 쓸수 있다. ** 동..

    기초 #5. 추상클래스 (ex. 계산기 프로그램)

    기초 #5. 추상클래스 (ex. 계산기 프로그램)

    추상? 추상이란, 실체들 간에 공통되는 특성을 추출한 것이다. ex) 삼각형, 사각형, 원 -> 모양, 그리기 등 추상 클래스? 실체 클래스(서브)들의 공통되는 필드와 메소드를 정의만 한 클래스이다. 실체클래스의 부모 역할이어야 한다. 단독X 추상클래스는 온전한 클래스가 아니기때문에 (new연산자로) 인스턴스 생성을 못한다. (상속받은 자식클래스에서 생성 가능하다.) 추상 메서드 : 실체 클래스(서브)들의 공통되는 메서드. (정의만) 실체 클래스 : 추상 클래스의 메서드를 구현하는 클래스. 실체 메서드 : 추상메서드를 구현. (오버라이딩-메서드 이름은 동일하지만 실행내용이 다른 메서드.) 간단한 예를 들면, Animal()이라는 추상클래스가 있고, 여기에는 Sound()라는 추상 메서드를 정의한다. pu..