본문 바로가기

프로그래밍/초보자를 위한 Java프로그래밍

Thinking in JAVA 6. 접근제어

반응형

리팩토링 - 작성한 코드를 더 좋은 방법으로 재구성하는 것(읽기 쉽고 이해하기 쉬워서 유지보수가 용이하도록 기존 코드를 재 작성)

public private protected 최대접근에서 최소접근까지의미를 부여

public - 최대접근

private - 최소접근 , 은닉성

protected - 상속(inheritance) 다른 패키지에 있는 베이스 클래스의 특정 멤버를 파생 클래스에서 접근할 수 있도록 해야 할 경우, 이때 protected를 사용 하며 protected는 패키지 접근도 허용한다. 즉 같은 패키지에 있는 다른 클래스들이 protected 멤버에 접근 할 수 있다. (상속 관계가 아니더라도)

패키지 : 라이브러리 유닛 - 하나의 네임 스페이스 하에 조직된 클래스의 그룹을 뜻함

코드 구조 : 컴파일어너어 c or c++에서는 소스코드 파일을 컴파일하면 목적 코드 (obj)이 만들어지며, 그 다음에 여러 목적 파일을 묶는 링커(linker)가 하나의 실행 파일을 만들거나 또는 라이브러리안(librarian)이 라이브러리를 만든다. but 자바는 다르다. 실행 프로그램은 .class 파일들로 구성되며, 이 파일들을 모아서 Jar(Java Archive) 파일(jar)로 압축된다. 자바 interpreter(jvm)가 .class를 찾고, 메모리에 로드하고, 실행하는 일을 한다.

인터페이스와 구현

접근 제어는 종종 구현 은닉(implementation hiding) 즉 클래스 내부에 구현한 필드나 메소드를 외부에서 알 수 없도록 감추는 것이다. 그리고 구현 은닉과 조합하여 클래스의 필드와 메소드 멤버를 포장한것을 캡슐화(encapsulation)라 한다. 이렇게 하면 자신만의 특성과 행동을 갖는 데이터 타입을 만드는 셈이다.

반응형