KOSA 교육 4일차
간단한 복습을 한 후 Scanner의 개념을 배움
/**
* ShirtTest는Shirt 객체를 생성할 때 인자값으로 실제값을 바로 입력했다.
* 즉, 컴파일 시점에 실제값이 입력되었다.
* 프로그램은 실행할때마다 서로다른 값을 받아들일 수 있는 통로를 가져야 한다.
*
* 실행 시점에서 값을 받아들이기 위해서는 Scanner를 사용할 수 있어야 한다.
* 우리는 실행할 때 키보드를 통해서 원하는 값을 읽어들이는 Scanner를 사용할 것이다.
*
* 1. Scanner 객체 생성 (Scanner의 필드와 메소드가 메모리에 올라간다)
* 2. Scanner 메소드 사용
*
*/
Scanner sc = new Scanner(System.in);
String maker = sc.next();
String s = sc.next();
int size = Integer.parseInt(s);
// 자동생성 시 s라고 쓰여있는 메소드는 메모리에 올리지않고, 즉 객체생성을 하지 않고
// 바로 가져다 쓸 수 있음 메모리에 이미 올려져 있다는 뜻
String ls = sc.next();
boolean longSleeved = Boolean.parseBoolean(ls);
// Integer, Boolean, Byte, Float, Character... 얘네들을 Wrapper Class라고 한다.
이렇게 주소를 찍어보면,
Programmer james = new Programmer("James", "java", 1000000.0, 2000);
Programmer anna = new Programmer("김안나", "python", 3000000.0, 1000);
System.out.println(james);
System.out.println(anna);
다음과 같이 주소(String형식)가 나온다
여기서의 @ 앞 부분은 객체의 (패키지를 포함한) 클래스 이름이고
@는 자바의 연결 기호이고,
@이후는 객체의 해시코드 (hashCode)를 16진수로 표현한 값이다.
메모리 할당 업그레이드 버전
Garbage Collector, 쓰레기 객체의 의미, Memory Allocation
5일차 내용은 간단한 문법 개념이라 블로그에 따로 적지 않았다.
'KOSA FullStack 교육 > java' 카테고리의 다른 글
KOSA fullStack 교육(싱글톤) (0) | 2025.04.22 |
---|---|
KOSA fullStack 교육 6일차(Document 주석, 배열) (0) | 2025.04.16 |
KOSA fullStack 교육 3일차(객체 생성의 원리 및 생성자) (0) | 2025.04.11 |
KOSA fullStack 교육 2일차(Platform, Has a Relation) (0) | 2025.04.11 |
KOSA fullStack 교육 1일차 (0) | 2025.04.09 |