패키지

클래스와 인터페이스를 pakage라는 단위로 묶어서 관리.

package library;
package kr.co.soft.mall.stock;
※ soft.co.kr이라는 url에 대한 프로그램이면 그 이름을 역으로 패키지로 만든다.


import java.util.Scanner;
import java.util.* // util 패키지 안에 있는 클래스 모두 import



접근제어 public, private, protected

public
메소드, 생성자 앞에 붙여 자유롭게 사용

private
메소드 앞에 붙임. 같은 클래스 안에서만 사용 가능
생성자 앞에도 붙일 수 있으나 잘 안씀. 생성자는 외부에서 쓰기 위해 만드는 것이니 public을 주로 붙임.

protected 
같은 패키지 안에서는 자유롭게 사용 가능. 다른 패키지에서는 서브클래스 안에서만 사용 가능.
상속 관계, 같은 패키지에서 필드 허용
* public 등을 아예 안붙이면 같은 패키지 안에서만 사용 가능

final 
변경 불가. 

메소드 오버라이딩과 접근제어 (p370 참조)
오버라이드하는 메소드는 상속받은 메소드의 접근 허용범위보다 같거나 더 넓은 범위의 접근을 허용해야 한다.

오버라이드를 할 경우 하위 클래스에서 접근지정은 더 넓은 범위로 지정
인터페이스의 경우 접근지정을 생략하면 public으로 인식되므로 오버라이드를 할 경우 public으로 한다.





Posted by netyhobby
,