Java-3강
12월 24일 3강
preview
- identifier
$ 는 가능하면 사용하지 말 것
- Zero is positive
- 10장에서 autoboxing & unboxing 배움
- String은 class다. 메모리 heap에 저장한다.
- String은 주소(reference)를 쓰지 값(value)을 쓰는 것이 아니다.
Reference Types
- Are used to store addresses of objects.
- 저장은 heap에 불러올 땐 주소로 불러옴.
- 참조변수(reference valuable)를 통해서 접근
- heap은 주소로만 접근 그 주소는 참조변수에 저장되어 있다. 참조변수 크기는 4바이트
- reference types –> Interface, Enumeration, Class, Array, Annotation
- 복사의 대상이 primitive type 이면 무조건 value 복사
- 복사의 대상이 reference type 이면 address 복사
Constants
- final 을 쓰면 상수
Naming Conventions – Class names
nouns
- 이름규칙
1. Pascal casing (단어 첫 글자 대문자, 클래스, 인터페이스..)
2. Camel casing (첫 글자 소문자, 변수, 메서드..)
Naming Conventions – Interface names
adjectives
- 5개의 이름 규칙
Variable
모든 코드는 class 안에 작성해야 함.
- local
사용 전에 초기화
메소드, 블록 속에서 사용
메소드, 블록이 열리면 생성, 닫히면 소멸
- class
static 이 붙으면,
class variable, static variable(해석은 공유변수, 정적변수 아님)
new 하기 전에 메모리에 올라옴
static이 메모리에 가장 먼저 올라옴, 소멸시기는 알수없음.
라이프사이클이 가장 김. 가급적이면 사용하지 않음.
- instance
member, instance variable
gabage collector가 돌기 시작하면
Operator
- 연산자 우선순위가 가장 중요
prime > 단항 > 이항 > 삼항 > 할당
그 중에서 이항연산자 5개!! 이 중에서 시험..
bit operator
부호의 변화 주의
10000000(-128) >> 2 –> 11100000
10000000(-128) >>> 2 –> 00100000
instanceof (9장에서)
4장
Simple Programming constructs
- Conditions, Loops, Branches
자바의 배열은 절대 숫자를 쓰지 않는다.
.length 를 이용해서 배열의 크기 계산
switch 문
switch(variable)
variable types – char, int, short, byte, enum
method
- equals – 값을 비교 true, false return
- compareTo – 비교의 대상이 0이냐 아니냐
“A”.compareTo(“B”) —> A – B –> -1
“C”.compareTo(“B”) —> C – B –> 1
“C”.compareTo(“A”) —> A – A –> 0
Math
random()을 이용하기
0.0 <= Math.random() < 1.0
- max 값 곱하고 min갑 더하고
ex) 주사위
0.0 <= Math.random() < 1.0
0.0 <= Math.random() x 6 < 6.0
1.0 <= Math.random() x 6 + 1 < 7.0
강제 형변환
1 <= (int)(Math.random() x 6 +1) < 7
용어 정리
- class
모델링해서 코드화하면 클래스
- object ★
모델링이 가능한 모든 객체
- instance
메모리에 있는 객체, 코드화되어 있는 클래스를 메모리에 올려서 메모리에 존재하는 객체




