구조

Untitled

Untitled

스택과 큐 자료 구조

Untitled

static 변수

package static1;
  public class Data3 {
   public String name;
   public static int count; //static
	
	//생성자
   public Data3(String name) {
    this.name = name;
        count++;
    }
 }

 package static1;
 public class DataCountMain3 {

   public static void main(String[] args) {
    Data3 data1 = new Data3("A");
    System.out.println("A count=" + Data3.count);
 
    Data3 data2 = new Data3("B");
    System.out.println("B count=" + Data3.count);
   
    Data3 data3 = new Data3("C");
    System.out.println("C count=" + Data3.count);
    }
 }

A count=1 B count=2 C count=3

Untitled

Untitled

주의

멤버 메서드의 종류 1. 인스턴스 메서드

: static 이 붙지 않은 멤버 메서드

:인스턴스를 생성해야 사용할 수 있고, 인스턴스에 소속되어 있다. 2. 클래스 메서드(=static메서드, 정적 메서드,) : static 이 붙은 멤버 메서드 :인스턴스와 무관하게 클래스에 바로 접근해서 사용할 수 있고, 클래스 자체에 소속되어 있다.

Untitled

예시

아래의 코드에서 오류가 뜨는 이유는 인스턴스 메서드를 static메서드 호출하는 방법으로 호출하고 잇었기 때문. 그래서 showTotalCars() 를 static 메서드로 바꾸어 주면 오류가 사라진

Untitled