본문 바로가기

상속

자바의 추상클래스(Abstract class)와 인터페이스(interface class) 관련글 : 자바의 접근제한자,인터페이스,상속? 사실 처음 자바를 공부하면서 궁금해 하던게 있었습니다. 그것은 추상클래스(Abstract class)와 인터페이스(Interface)의 차이 및 존재이유입니다. 클래스는 크게 일반클래스와 추상클래스로 나뉘는데 추상클래스는 본문중에 '추상메소드'가 하나 이상 포함되는 경우를 말합니다. 인터페이스는 모든 메소드가 추상메소드인 경우 선언하는 경우가 많습니다. 추상메소드라 함은 메소드의 선언부만 있고 본문이 없는 것을 말합니다. 여기서 본문은 중괄호({})로 묶여진 몸체(body)부분을 말하는데 중괄호 안이 비어있더라도 이것이 존재한다면 그것은 추상메소드가 아닙니다. 추상메소드의 선언의 예는 다음과 같습니다. abstract public void test( int .. 더보기
자바의 접근제한자,인터페이스,상속? 2년전 제가 궁금해하며 썻던 글입니다. -------------------------------------------------------------------------- 자바 이 깊고 심오한 세계여. ㅋ 언어란 하나의 정형화된 문법,제약조건일뿐 본질은 그 언어를 이용한 자의 디자인인데 이거 예전 C,C++할때보다 훨씬 깊고 심오하다. 최신의 기술(디자인 패턴)이 집약되어서 그런듯. 자바는 하나의 명세 란 말이 정말 공감이 간다. 추상화 클래스도 그렇고,인터페이스도 그렇고 일단 전제가 JVM에서 돌아가는 가상의 언어니 말이다. ㅎ 공부하면서 몇몇 확립되지 않는 개념이 (프로그램 짜다보면 언젠간 정확히 이해되겠지만서도...) 접근제한자의 개념이다. 즉 PUBLIC , PRIVATE , PROTECT 3종.. 더보기
내가 생각하는 객체지향..? 카페모카님의 "나의 머리속 객체지향"을 읽고 나름대로 생각해본 객체지향이다. 객체 각각 자신의 행동과 속성을 가진 프로그램의 단위. 모든 객체는 자신을 규정하고 있는 속성과 목적을 위한 행동을 가지고있다. 상속 표현할 대상을 분류하기 위한 수단. 실세계(구현대상)를 컴퓨터로서 표현하기 위해 대상을 일정부분 나눠서 생각하지 않으면 안된다. 대상들을 비슷한 부분과 다른 부분으로 나누어 표현하기위한 기술중의 하나이다. 캡슐화 객체를 추상화하기 위한 기술. 각각의 객체는 자신을 단순하게 표현함으로서 실제의 복잡한 행동을 감출수있다. 이것은 좀더 높은 추상화 수준(Layer)에서의 구현을 가능하게 해준다. 다형성 공통된 행동을 가진 객체가 있다면 같은 형태로 제어할 수 있다는 것. 자바에서는 이것을 구현하기 위해.. 더보기