접근제한자와 자바 API
📘자바
접근 제한자
외부 접근을 허용할지 말지를 결정하는 키워드 접근 제한자의 종류는 크게 4가지이며, 필드와 메소드에 적용할 수 있다. 종류
1.private 비공개
- default 패키지 내부 공개 //같은 공간 클래스에게 공개
- protected 상속 공개 //상속 관계의 클래스까지 접근을 허용한다
- public 완전 공개
class AAA{
//필드
private String aaa; //비공개
int bb; //디폴트 공개
protected double ccc; //상속 공개
public boolean ddd; //완전 공개
//메소드
private void eee(){} //비공개
int fff() {} //디폴트 공개
protected double ggg() {} //상속 공개
public boolean hhh() {} //완전 공개
}
private 비공개
(1) private = 외부 접근을 막는 키워드
(2) getter methods(게터 메소드) = private 필드를 변환(비공개 필드를 우회하여 가져옴) private int number 의 number을 get하고 싶을때 public int getNumber(){ return number; } number을 우회하여 반환하기 위해 public 을 쓰고 변수명은 private변수앞글자를 대문자로 하고 get을 붙인다 (number –> getNumber)
(3) setter methods(세터 메소드) = private 필드를 변경(비공개 필드를 우회하여 변경함) private int number 의 number을 set 하고 싶을때 public void setNumber(int n){ number = n; } number을 우회하여 변경하기 위해 public 을 쓰고 변수명은 private변수앞글자를 대문자로 하고 set을 붙인다 (number –> setNumber)
this 키워드
this 키워드는 메소드 수행의 주체 객체를 가리킨다. 이를 통해 같은 이름의 파라미터 name 과 구분할수 있게한다
class Cookie{
private String name; // 이것이 this
private int price; // 이것이 this
public Cookie(String name , int price){
this.name = name ; //this.name -> 인스턴스 변수
this.price = price; //this.price -> 인스턴스 변수
}
자바 API
자바 API = 프로그래밍을 위해 미리 준비된 도구들 패키지 = 자바 API가 담겨진 일종의 폴더 패키지의 그룹화 = 관련 API를 한데 묶음 패키지로 분류화 = 이름은 같지만 내용이 다른것을 구분
Java API 예 //패키지 내 클래스 불러오기이색은 패키지 이색은클래스
import java.lang.Math import java.util.Random import java.util.ArrayList