반응형

@notepad_jj2

츄르사려고 코딩하는 코집사입니다.


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
  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기