ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [JAVA] 접근지정자(AccessModifier)
    언어/JAVA 2022. 9. 7. 17:41

    -모든 클래스의 멤버는 현실에 존재하는 대상의 정보로써 직접적인 접근이 허용되는 것과 허용되면 안되는 정보가 있음.

    -접근 지정자는 클래스의 멤버들에 대한 접근을 제어하는 키워드

    -클래스의 멤버필드/메소드는 접근지정자(private, protected, public)에 의해서 외부에서의 접근을 제어할 수 있음.

    -접근지정자를 사용하지 않는 경우 기본지정으로 public이 설정되며 클래스외부에서의 임의의 사용으로 값을 대입하거나 얻을 수 있음.

    -이는 멤버필드의 값이 강제로 수정될 수 있다는 뜻

    -이를 방지하고 무분별한 접근을 막기위해 멤버변수에 private를 지정함

    class Account{
    	private double balance; // 계좌정보 클래스에 잔액이 저장된 멤버변수
    // private 멤버에 접근할 수 있는 권한은 내부에 있는 메서드에만 허용됨
    	public void display() {
    // 멤버메서드에 보통 public으로 지정해서 멤버변수값을 세팅하거나 
    // 얻어쓰는 방식으로 운용함
    		System.out.printf("현재 잔액은 %.2f원 입니다.\n",balance);
    	} // 잔고 확인 가능
    	public void initBanance(int i) {
    		balance=i;
    	}
    	public void withraw(int i) {
    		balance-=i;
    	}
    	public void deposit(int i) {
    		balance+=i;
    	}
    }
    
    public class Class01 {
    	public static void main(String[] args) {
    		Account a=new Account();
    		a.initBanance(100000); // 잔액 초기화
    		a.display(); // 화면에 잔액 표시
    // 같은 클래스 내부의 멤버메서드끼리는 앞에 객체이름 없이 
    // 서로를 자유롭게 호출 가능함
    		a.withraw(5000); // 출금
    		a.display();
    // a.balance=100000; 
    //private 멤버는 클래스 외부에서는 객체 이름을 통해서도 접근 금지
    		a.deposit(20000); // 입금
    		a.display();
    	}
    }

    '언어 > JAVA' 카테고리의 다른 글

    [JAVA] This  (0) 2022.09.07
    [JAVA] 생성(Constructor)  (0) 2022.09.07
    [JAVA] Class  (0) 2022.09.07
    [JAVA] Overloading  (0) 2022.09.07
    [JAVA] for문  (0) 2022.09.07

    댓글

Designed by Tistory.