java 학습의 static 키워드 (위)

1824 단어 static

static 키워드:

  • 구성원 수식
  • 손질된 멤버의 특징은 다음과 같습니다.

  • 클래스의 로드에 따라 로드
  • 객체보다 우선
  • 모든 객체에 공유
  • 클래스에 직접 호출 가능
  • static의 특징

  • static는 수식부호로 구성원을 수식한다
  • static 수식의 구성원은 모든 구성원에게 공유된다.
  • static는 대상보다 우선적으로 존재합니다. static의 구성원은 클래스의 불러오기에 따라 이미 존재하기 때문입니다
  • static 수식의 구성원은 하나의 호출 방식이 많아서 클래스명으로 직접 호출할 수 있다
  • static 수식 데이터는 공유 데이터이고 대상에 저장된 데이터는 특유 데이터
  • 구성원 변수와 정적 변수의 차이


    1 . 두 변수의 생명 주기가 다르다
  • 구성원 변수는 대상이 생성됨에 따라 존재하고 대상이 회수됨에 따라 방출된다.
  • 정적 변수는 누적된 부하에 따라 존재하고 클래스가 사라지면서 사라진다.

  • 2 . 호출 방식이 다르다
  • 구성원 변수는 대상에게만 호출될 수 있습니다.
  • 정적 변수는 클래스와 대상에 의해 호출될 수 있다.

  • 3 . 별명이 다르다
  • 구성원 변수도 실례 변수라고 한다.
  • 정적 변수를 클래스 변수라고 부른다.

  • 4 . 데이터 저장 위치가 다르다
  • 구성원 변수 데이터는 메모리의 대상에 저장되기 때문에 대상의 특유한 데이터라고도 부른다.
  • 정적 변수는 방법 구역(정적 구역)에 저장되기 때문에 대상의 공유 데이터라고도 부른다.

  • 사용 주의

  • 정적 접근 방법은 정적 구성원만 접근할 수 있다(한계, 비정상적으로 정적 접근 가능, 정적 접근 가능)
  • 정적 방법에서this, 슈퍼 키워드를 사용할 수 없음
  • 기본 방법은 정적
  • static가 수식한 데이터는 공유 데이터이기 때문에 이 데이터가 한 곳에서 수정되면 이 데이터를 사용하는 다른 대상의 데이터도 수정됩니다.

  • 예: 주 함수


    public class void main(String[] args)
    주 함수의 차이점:
  • 형식은 고정적
  • JVM에서 호출 및 인식
  • public: 최대 권한
  • static: 대상이 필요 없고 주함수 소속 클래스명으로 직접 호출
  • void: 주함수에 구체적인 반환값이 없음
  • main: 함수명, 키워드가 아니라 JVM에서 식별할 수 있는 이름
  • string[]args: 주 함수의 매개 변수 목록은 수치 형식의 매개 변수이고 요소는 모두 문자열 형식입니다.

  • Test.java
    public class Test{
    	public static void main(String[] args){
    		System.out.println(args);
    		System.out.println(args.length);
    	}
    }

    결과 출력:
    //[(배열로 표시), L(long), java.lang(패키지 이름), String(클래스), @659e0bfd(해시 값)
    [Ljava.lang.String;@659e0bfd  

    0

    좋은 웹페이지 즐겨찾기