자바 멤버 변수의 접근 제한자와 변수의 유효 범위에 대해서 알아볼께.

자바의 멤버변수 접근 제한자

자바는 객체지향의 특성인 캡슐화(encapsulation)와 정보은폐(information hiding)를 제공하기 위해 멤버 변수에 제한자를 사용해.

자바에서 제공하는 멤버 변수 제한자는 public, private, protected를 제공하는데 별도의 접근 제한자가 없는 경우에는 동일한 패키지와 하위 클래스에서 사용가능한 변수라고 생각하면 돼.

public

public으로 선언된 객체 변수는 소속된 클래스가 접근 가능하면 항상 접근이 가능한 변수야.

class Box {
  public int width;
  public int height;
  public int depth;
  public long idNum;
  static long boxID = 0;
  public Box() {
    idNum = boxID++;
  }
}

class PublicDemo {
  public static void main(String args[]) {
    Box mybox1 = new Box();
    Box mybox2 = new Box();
    mybox1.width = 7;
    mybox2.depth = 20;
  }
}

private

private으로 선언된 객체 변수는 소속된 클래스 내부에서만 사용이 가능해.

class Box {
  private int width;
  private int height;
  private int depth;
  ...
}

class PublicDemo {
  public static void main(String args[]) {
    Box mybox1 = new Box();
    mybox1.width = 7; //에러 발생
  }
}

protected

protected로 선언된 객체 변수는 소속된 클래스의 하위 클래스와 소속된 클래스와 같은 패키지의 클래스에서만 사용가능해.

class Box {
  private int width;
  private int height;
  private int depth;
  protected int count; //이 클래스와 이 클래스의 하위 클래스에서 사용
  ...
}

class ProtectedDemo1 extends Box {
  //extends를 이용하여 Box 클래스의 하위 클래스로 생성
  public static void main(String args[]) {
    Box mybox2 = new Box();
    mybox2.count = 7; //접근가능
  }
}

변수의 유효범위

변수는 유효범위를 기준으로 구분할 수가 있는데 유효범위를 기준으로 변수를 구분하면 멤버변수, 메소드 매개변수와 지역변수, 예외 처리기 매개변수로 나눌 수 있어.

변수의 유효범위

Share This Post

Leave a Reply

Your email address will not be published. Required fields are marked *

Latest Post

  • Criss Cross Crossover Crunch Flutter Kicks Heel Touch Knees Up Crunch Legs Lower Plank Side Plank Superman Arms Up Crunch Aquaman Catch Dish Oblique Crunch
  • Businesses can survive by constantly generating revenue by selling goods or services. Companies that do not have sales or profit can not survive. So it
  • Amazon CEO Jeff Bezos sends letters to shareholders every year. This letter contains Amazon’s current achievements and future vision. He also enclose that the first
  • A middle-aged man came to Pastor Norman Vincent Peale one day to ask him for counseling. The dejected man told Pastor Norman Vincent Peale. “Pastor,
  • I have been working as an IT freelancer for over 10 years and have had a chance to work with various clients. Working freelance, I
  • CNBC analyzed the minutes of the Berkshire Hathaway shareholders’ meeting to find out why Warren Buffett could be an excellent investor. It is already known,
  • Good timing is like a good choice. So what is ‘good choice’? A good choice is to decide what you need to do first. That
  • We learned that in childhood we should brush our teeth immediately after eating rice. However, this is a common misconception in the days when common
  • In most cases, it is important for novice marketers to work efficiently by reducing the waste of work and increasing focus. He will not used
  • source: vornado.com The circulator is the abbreviated name for ‘air circulator’. The air circulator actually has a different purpose than the fan. Unlike a fan