고마구의 개발 블로그
240426 1주차 금요일 - JAVA04 본문
1.
String.format()은 매개변수를 가지고 새로운 문자열을 만들어 주는 일을 하는 메소드이다.
예제)
int age=156;
String name="hong";
double height=175.3;
System.out.println(String.format("나이는 %d, 이름은 %s, 키는 %.1f 입니다.", age, name, height));
-메모리는 3개로 분리되어 있다. (메소드, 스택, 힙)
각 메모리의 특징은
메소드 영역 - 실행코드, 전역변수
스택영역 - 지역변수
힙영역-상수풀, 크기가 정해져 있지 않은 데이터(참조형 데이터의 실제 데이터 (new))
-메모리를 분리해서 쓰는 이유는 속력 향상을 위해서(+안정성 향상)
메소드영역은 한번 등록하면 프로그램이 종료될 때 까지 계속 등록되어서 지속적으로 접근할 수 있다.
스택 영역은 해당 메소드가 실행중일때만 메모리에 등록되어 있다. 종료되면 사라진다.
힙영역은 사용자가 필요할 때 생성해서 쓸 수 있다. 더 이상 접근하지 못하면 가비지 컬랙션이 수거해간다.
예)
public class Example {
// 전역변수
static String b=new String("hello"); //참조데이터는 메소드 영역에 저장, 실제데이터는 힙영역에 저장
static int globalVar = 10; //메소드 영역에 저장된다
public static void main(String[] args) {
// 지역변수
int localVar = 5; //스택 영역에 저장된다
System.out.println("globalVar: " + globalVar); // 10 출력 전역변수
System.out.println("localVar: " + localVar); // 5 출력 지역변수
// 지역변수 우선 사용
int globalVar = 20; //스택 영역에 저장된다
System.out.println("globalVar: " + globalVar); // 20 출력 지역변수
System.out.println("globalVar: " + Example.globalVar); //10 전역변수출력
String d=new String("world"); //문자열은 수정이 안되고 새로 생성되서 참조데이터는 메소드에, 실제 데이터는 힙메모리에 저장된다.
}
}
KDT 풀스택 국비 1주차 끝!
'KDT풀스택과정 공부' 카테고리의 다른 글
240430 2주차 화요일 - JAVA 06 (0) | 2024.04.30 |
---|---|
240429 2주차 월요일 - JAVA 05 (0) | 2024.04.29 |
240425 1주 목요일 - JAVA03 (1) | 2024.04.25 |
240424 1주차 수요일 - JAVA02 (0) | 2024.04.24 |
240423 1주차 화요일 - JAVA01 (0) | 2024.04.23 |