왕현성
코딩발자취
왕현성
전체 방문자
오늘
어제
  • 코딩 (277)
    • Python (71)
    • Java (16)
    • MySQL (34)
    • 인공지능 (48)
      • 머신러닝 (16)
      • 딥러닝 (32)
    • 영상처리 (4)
    • Rest API (21)
    • Android Studio (25)
    • streamlit (13)
    • DevOps (22)
      • AWS (9)
      • PuTTY (5)
      • Git (4)
      • Serverless (2)
      • Docker (2)
    • IT 기술 용어 (6)
    • 디버깅 ( 오류 해결 과정 ) (17)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • 비지도학습
  • alibidetect
  • maskimage
  • PYTHON
  • imageprocessing
  • labelme UnocodeDecodeError
  • ckpt_file
  • 의료이미징
  • numpy
  • 영상기술
  • TensorFlow
  • UnboundLocalError
  • labelme
  • pytorch
  • ComputerVision
  • alibi-detection
  • 기상탐사
  • 영상처리
  • encoding='utf-8'
  • PIL
  • get_long_description
  • 영상처리역사
  • OpenCV
  • tune()
  • 컴퓨터비전
  • pip install labelme
  • yolov8
  • 딥러닝
  • unsupervised
  • matplotlib

최근 댓글

최근 글

티스토리

250x250
hELLO · Designed By 정상우.
왕현성

코딩발자취

Java - Static (전역변수)와 메모리의 data영역
Java

Java - Static (전역변수)와 메모리의 data영역

2023. 1. 18. 17:17
728x90

Class에서 그동안 만들었던 멤버변수들은 Heap 메모리에 저장되었다.

지금 얘기할 전역변수는 Heap영역이 아닌 데이터 영역에 저장된다.

public class StaticVar {
	
	// Static(전역) 변수 => 공유
	static int count = 1;
	// 멤버 변수 => 자기 자신만의 데이터
	int data = 0;
	
	void print() {
		System.out.println("count :"+count);
		System.out.println("data :"+data);
	}

}

 

전역 변수의 값을 저장하는 방법.

똑같이 '=' 기호를 쓰지만 아래 코드와 같이 클래스 이름을 쓰고 억세스한다.

StaticVar.count = 3;

코드:

public class StaticMain {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		
		StaticVar sv1 = new StaticVar();
		
		sv1.print();
		
		StaticVar sv2 = new StaticVar();
		
		sv2.print();
		// Static(전역) 변수는 
		// 클래스 이름을 쓰고 억세스 한다.
		StaticVar.count = 3;
		
		
		sv1.print();
		sv2.print();
		
		sv1.data = 10;
		sv2.data = 500;
		StaticVar.count=33;
		
		sv1.print();
		sv2.print();
	}

}

실행 결과

'Java' 카테고리의 다른 글

Java - 생성자(Constructor) , 생성자 오버로딩  (0) 2023.01.19
Java - 메소드 오버로딩 (Method Overloading)  (0) 2023.01.18
Java - 클래스 (객체, 인스턴스 변수(=멤버 변수), 메소드)  (0) 2023.01.18
Java - 함수의 정의 ( 데이터타입, 함수명, 파라미터 )  (0) 2023.01.18
Java - 배열 (선언과 생성, 사용 방법,데이터 억세스,배열의 길이 구하는 방법 length)  (0) 2023.01.18
    'Java' 카테고리의 다른 글
    • Java - 생성자(Constructor) , 생성자 오버로딩
    • Java - 메소드 오버로딩 (Method Overloading)
    • Java - 클래스 (객체, 인스턴스 변수(=멤버 변수), 메소드)
    • Java - 함수의 정의 ( 데이터타입, 함수명, 파라미터 )
    왕현성
    왕현성
    AI 머신비전 학습일지

    티스토리툴바