본문 바로가기
Java

[Java] 접근제어자

by coding_su 2023. 1. 19.

📝접근제어자

클래스의 메소드와 멤버변수를 다른 파일(패키지)에서 사용가능하도록 하는 접근제어자

접근제어자의 위치는 데이터타입 왼쪽에 위치한다

 

접근제어자 종류는 4가지가 있다
1. 아무것도 안적는 것 > 디폴트(default) : 같은 패키지 내에서만 접근가능
2. public : 아무데서나 접근가능
3. private : 다른곳에서 접근불가
4. protected : 상속관계만 접근 가능(상속 받은 클래스 안에서만 사용가능)

// 패키지는 폴더를 의미한다 
package data;

public class Member {
	// 접근제어자의 위치는 데이터타입 왼쪽에 위치
	private String name;
	private String tel;
	private String address;
	
	public Member(){		
	}
	
	// 멤버변수와 로컬변수는 영역이 다르니까 이름을 같게해도 된다
	public Member(String name, String tel, String address) {
		this.name = name;
		this.tel = tel;
		this.address = address;
	}
}

 

다른 패키지(다른 폴더)의 클래스에서 위에서 만든 클래스 사용해보기

+ 같은 패키지 안에 있으면 바로 사용이 가능하지만 다른 패키지에서 클래스를 사용하려면

해당 클래스를 import 해야한다 (패키지명.클래스명)

package main;

// 다른 폴더(다른 패키지)의 클래스를 사용하려면 import 해야한다
import data.Member;

public class AccessMain {

	public static void main(String[] args) {
		
		// 아래 코드는 Member 클래스의 멤버변수가 public 일때만 동작
//		m1.name = "홍길동";
//		m1.tel = "010-1111-2222";
//		m1.address = "인천 서구 가좌동";
		
		Member m1 = new Member("김나나", "010-4433-2211", "서울시 마포구 공덕동");
	}
}

댓글