츄르사려고 코딩하는 코집사입니다.
1. 오늘 한 일
1) 용어 정리
- 클래스 : 자바 프로그램의 최소 단위로, 관련있는 변수와 함수(메서드)를 묶어 만든 사용자 정의 자료형입니다. 이 클래스를 통해 여러 객체를 만들어 사용할 수 있습니다.
- getter, setter를 사용하는 이유
* 1. setter에서 입력값에 대해 검증하기 위해 사용
* 2. getter만 있을 경우 읽기 전용
* 3. setter만 있을 경우 쓰기 전용
* 4. 둘 다 없으면 접근 불가
* 5. 둘 다 있으면 읽기/쓰기 가능
* 6. 그렇기 때문에, 세분화된 접근 제어가 가능하다.
* 7. 즉, 은닉화와 캡슐화를 활용할 수 있음
- 생성자 : 객체가 생성될 때 딱 한 번만 호출되어지는 함수
* 생성자는 함수이지만 반환유형이 없다.
* 생성자는 함수명이 클래스명과 같다.
* 생성자는 함수이니까 오버로딩이 가능하다.
* 생성자를 하나도 안만들었다면 몸통이 빈 기본생성자를 컴파일러가 생성함
2) 자바(Java) Pass by Value
/*
* Java Pass by Value
*/
public class Test {
public static void main(String[] args) {
int a=10;
func(a);
System.out.println(a); // a는 10출력
//func함수에서 return을 하지 않았음
}
static void func(int a) {
a*=2;
}
}
import java.util.Arrays;
/*
* Java Pass by Value
* 배열 같은 경우에는 func(arr)이 들어가면 주소값이 들어가기 때문에 2,4,6으로 변함
*/
public class Test {
public static void main(String[] args) {
int[] arr = {1,2,3};
func(arr);
//2,4,6 출력
System.out.println(Arrays.toString(arr));
}
static void func(int[] arr) {
arr[0] *= 2;
arr[1] *= 2;
arr[2] *= 2;
}
}
3) 자바(toString) 메소드
import java.util.Arrays;
public class Test {
public static void main(String[] args) {
Person[] person = new Person[3];
person[0] = new Person();
person[1] = new Person();
person[2] = new Person();
//toString 메소드 설명
//아래의 두 개는 같다.
//println은 객체를 주면 자동으로 toString()을 해준다.
//즉, person[0] 객체의 주소를 출력한다.
System.out.println(person[0]);
System.out.println(person[0].toString());
}
}
3) 자바(Java) RunTime Area
4) 자바(Java) String Constant Pool
5) 자바 이클립스 단축키
- alt + shift + s -> r : getter setter
- alt + shift + s -> c : 생성자 생성
- alt + shift + s -> o : 멤버변수 생성자
- alt + shift + s -> s : toString Generate
- 리팩토링 : 블록 지정 후 오른쪽 클릭 -> Refactor -> extract Method(Alt + Shift + M)으로 메소드를 만들 수 있음.
6) toString 실습
//toString 실습
public static void main(String[] args) {
int[] a = {1};
System.out.println(a.length);
System.out.println(a);
System.out.println(a.toString());
System.out.println("배열 : "+ a);
System.out.println("배열 : "+ a.toString());
Board b = new Board();
System.out.println(b.getNo()); //toString이 안붙는다. 객체 뒤에 getNo를 호출해서
System.out.println(b); //toString이 붙는다.
}
'자기개발 > TIL' 카테고리의 다른 글
TIL(Today I Learned) 20210303 (0) | 2021.03.03 |
---|---|
TIL(Today I Learned) 20210125 ~ 20210126 (0) | 2021.01.26 |
TIL(Today I Learned) 20210123 ~ 20210124 (0) | 2021.01.25 |
TIL(Today I Learned) 20210122 (0) | 2021.01.22 |
TIL(Today I Learned) 20210120 (0) | 2021.01.21 |
TIL(Today I Learned) 20210119 (0) | 2021.01.20 |
TIL(Today I Learned) 20210115 (0) | 2021.01.15 |
TIL(Today I Learned) 20210114 (0) | 2021.01.14 |
최근댓글