Develop/JAVA

JAVA - Access Level Modifiers, static

Rigid to Me 2022. 6. 14. 11:12

기록용, 추후 수정 예정

 

 

Access Level Modifiers

  • public
  • protected
  • default
  • private : Class 내부의 있는 메소드에서만 동작

 

static

  • static - class method
  • no static - instance method
class Print {
	public String delimiter;
	//method 가 class 의 소속일 경우 static 이 있어야함
	//method 가 instance 의 소속일 경우 non static
	
	public void a() {
		System.out.println(this.delimiter); //t1 instance의 지정한 값이 됨
		System.out.println("a");
		System.out.println("a");
	}

	public void b() {
		System.out.println(this.delimiter);
		System.out.println("b");
		System.out.println("b");

	}
	
	public static void c(String delimiter) {
		System.out.println(delimiter);
		System.out.println("c");
		System.out.println("c");
		
	}

}

public class StaticMethod {

	public static void main(String[] args) {
//		Print.a("-");
//		Print.b("-");

		Print t1 = new Print(); //t1은 Print라는 클래스의 instance
		t1.delimiter = "-";
		t1.a();
		t1.b();
		Print.c("$");
		
//		Print.a("*");
//		Print.b("*");
		
		Print t2 = new Print();
		t2.delimiter = "*";
		t2.a();
		t2.b();
	}

}