자바

Static

khon98 2020. 6. 22. 21:49

Static

- 변수나 메서드에 static을 붙여 주게 되면 객체의 생성 없이 사용할 수 있다

 

- 같은 클래스로부터 생성된 모든 객체들은 Static.변수를 개별적으로 가질 수 없으며 하나의 변수를 공용으로 사용한다

 

- 객체를 생성하지 않고 사용할 수 있으며 변수나 메서드를 사용할 때는 클래스 이름.멤버의 형태로 접근해서 사용한다

 

- 단 static 메서드에서 사용할 수 있는 멤버 변수는 static 변수뿐이며 static 변수가 아닌 일반 변수들은 객체를 생성해야지만 사용이 가능하기 때문이다

 

1. static은 멤버 변수나 메서드를 객체를 생성하지 않고도 사용할 수 있도록 하는 개념을 의미한다

 

2. static 메서드는 static 멤버 변수 외에는 사용할 수 없다

 

Static.java

---------------------------------------------------------------------------------------------------------

int a;

static int b;

 

public static void main(Strint[ ] args) {

     // TODO Auto-generated method stub

     // a = 100;

     b = 200;

     System.out.println(b);

 

     Class1.a = 300;

     Class1.method( );

 

     Class c1 = new Class1( );

     Class c2 = new Class2( );

 

     c1.a = 1000;

     System.out.println(c2.a);

}

---------------------------------------------------------------------------------------------------------

 

Class1.java

---------------------------------------------------------------------------------------------------------

static int a;

 

public static void method1( ) {

     System.out.println("변수 a : " + a);

}

---------------------------------------------------------------------------------------------------------

 

Console

---------------------------------------------------------------------------------------------------------

200

변수 a : 300

1000

---------------------------------------------------------------------------------------------------------