추상 2

인터페이스

인터페이스의 역할 인터페이스는 객체의 사용방법을 정의한 타입 객체의 교환성을 높여주기 때문에 다형성을 구현하는 매우 중요한 역할 자바8의 람다식은 함수적 인터페이스의 구현 객체를 생성 인터페이스는 개발 코드와 객체가 서로 통신하는 접점 역할 개발 코드가 인터페이스의 메소드를 호출 -> 인터페이스는 객체 메소드 호출 개발 코드는 객체의 내부 구조를 알 필요가 없다. 인터페이스의 메소드만 알고 있으면 된다. 개발 코드가 직접 객체의 메소드를 호출 하면 간단 -> 개발코드를 수정하지 않고 사용하는 객체를 변경할수 있도록 하기 위함 인터페이스는 하나의 객체가 아니라 여러 객체들과 사용이 가능 하므로 어떤 객체를 사용하느냐에 따라 실행 내용과 리턴값이 다를 수 있다. 개발 코드 측면에서는 코드 변경 없이 실행 내..

추상 클래스

추상 클래스의 개념 추상 (abstract) 실체 간에 공통되는 특성을 추출 객체를 직접 생성 할 수 있는 클래스를 실체 클래스 클래스들의 공통적인 특성을 추출해서 선언한 클래스 추상 클래스 추상클래스와 실체 클래스는 상속 관계 추상 클래스는 new 연산자를 사용해서 인스턴스를 생성 시키지 못함 부모 클래스로만 사용 코드로 설명하면 추상 클래스는 extends 뒤에만 올수 있는 클래스 추상 클래스의 용도 1. 실체 클래스들의 공통된 필드와 메소드의 이름을 통일 할 목적 2. 실체 클래스를 작성할때 시간을 절약 설계자와 코더는 일반적으로 다른 사람 설계자는 코더에서 클래스는 어떤 구조로 작성해야 한다는 것을 알려줄 필요성이 있다. 단순히 문서로 코더에게 전달한다면, 코더가 실수로 필드와 메소드 이름을 다르..