본문 바로가기
Challenge

#210718 java 변수

by Daisy :) 2021. 7. 18.
반응형

변수는 언제 사용할까? 필요한 이유는 뭘까?

    웹시스템 기준으로 데이터는 항상 전달하거나 전달받게 된다. 


    DB를 통해서 전달한 데이터를 어떻게 관리를 해야할까? 
        →  데이터는 항상 변하기때문에  전달하고 전달받기 위해서 변수를 사용. (매개변수 == 파라미터) 

    변수에는 데이터를 저장하는 목적, 주는 목적, 받는 목적이 있다.  

    변수에 데이터를 담아 사용하고, 메서드의 호출 결과도 변수에 담을 수 있다. 

    변수가 없는 메서드는 더이상 데이터 전달이 불가하다 (static  변수를 선언하면 사용은 가능) 

    이는 데이터를 전달했고 데이터를 받을 수 있음을 의미한다.    

public class Var0718 {

	public static void main(String[] args) {
		
		int c = 10, d = 20;  // 변수는 값을 담는 역할도 하고, 
		 
		System.out.println(add(1,2));  // 매개변수로서 데이터를 담는 역할도 한다. 
		System.out.println(add(c,d));
        
        System.out.println("-----------------------");
		
		int i = getListCount(); // 메서드의 호출 결과도 변수에 담을 수 있다.
		System.out.println(i); 

	}

	public static int add(int a,int b) { 
		return a+b;
	}
    
    public static int getListCount() {
		
		return 100;
	}
}

 

실행결과

add(1,2) : 3
add(c,d) : 30
-----------------------
100

 

임시로 데이터를 저장하는  것도 변수를 사용할 수 있는데 

    → 코드의 유지보수, 간결성, 가독성등으로 변수 사용이 가능하다.

 

그렇다면 static 변수에 대해 알아보자. 

 

public class Var0718 {

	public static void main(String[] args) {

		getStaticNum();

	}

	public static void getStaticNum() {
		
		System.out.println(StaticNum.staticNum);
		
		StaticNum staticNum = new StaticNum();
		System.out.println(staticNum.localNum);

	}

}

class StaticNum{
	
	  public static int staticNum = 0;
	  
	  public int localNum = 1;

}

static 변수는  프로그램이 실행될 떄 메모리에 올라가서 , 어떤 클래스안에 static으로 선언되어 있으면 객체를 생성하지 않아도 접근이 가능하다.

 

Non-static 변수는 메모리;에 올라가 있어야 사용이 가능해서 객체 생성이 필요하다. 

 

 

반응형

'Challenge' 카테고리의 다른 글

나의 챌린지에 대하여..  (0) 2021.12.06
#210718 java 연산자  (0) 2021.07.18
210315 #1:)  (0) 2021.03.26
12주차 과제: 애노테이션 #12  (0) 2021.02.12
11주차 과제: Enum  (0) 2021.01.29

댓글