hyeonga_code
Java의 신_Chapter 08_Reference Type 본문
2024.03.27
- 참조 자료형_Reference Type
-- 기본 자료형을 제외한 모든 자료형
-- new 를 사용해 객체를 생성하여 사용 ( String 제외 )
-- 등호 외의 연산자를 사용할 수 없음 ( String 제외 )
-- 기본 생성자
---- 다른 생성자를 작성하지 않은 경우 컴파일 시 자동으로 생성된다.
---- 매개변수를 가지는 생성자를 작성하는 경우 기본 생성자도 함께 작성해야 한다.
public Reference(){}
-- 생성자가 필요한 이유
---- 자바 클래스의 객체(인스턴스)를 생성하기 위해 존재
---- 생성자의 리턴 타입은 클래스의 객체이므로 리턴타입을 작성하지 않음
---- 클래스와 이름이 동일해야 컴파일러가 생성자임을 인식할 수 있음
---- 클래스의 가장 윗부분에 작성
---- 생성자의 개수는 상관없음
---- 생성자가 없어도 객체를 얻을 수 있는 클래스도 있음
public class ReferenceDefault{
// 인스턴스 변수 선언
// 생성자
// 메소드
}
-- VO_Value Object
---- 데이터를 담아두기 위한 목적
-- DTO_Data Transfer Object
---- 데이터를 다른 서버로 전달하기 위한 목적
---- 속성을 가지는 클래스를 만들고, 속성을 쉽게 전달하기 위해 생성
------ DTO가 VO를 포함한다.
---- DTO를 사용하면 하나만 리턴할 수 있는 메소드에 여러 값을 넘겨줄 수 있음
-- this
---- 객체의 변수와 매개 변수의 이름이 동일한 경우 인스턴스 변수를 구분하기 위해 사용
---- 생성자와 메소드 안에서 사용할 수 있음
-- 메소드가 종료되는 조건
---- 메소드의 모든 문장이 실행된 경우
---- return 문장에 도달한 경우
---- 예외가 발생한 경우
------ if문 안에 return 문이 있는 경우, 이외의 경우도 존재하므로 return 문이 2개 이상 존재해야 함
---- 메소드의 리턴 타입이 void인 경우, 메소드를 종료하고 싶다면 return; 으로 종료
-- static 메소드 vs 일반 메소드
---- static
------ 객체를 생성하지 않아도 메소드를 호출할 수 있음
---- 클래스 변수만 사용할 수 있음
------ non-static variable name cannot be referenced from a static context
---- static 메소드에서 사용하기 위해 인스턴스 변수에 static을 붙여 클래스 변수로 수정하는 경우
------ 모든 객체에서 하나의 값을 사용하게 되므로 주의
-- static 블록
---- 클래스 내에 선언
---- 메소드 내에 선언 불가능
static {
// 한 번만 실행
}
-- 기본 자료형은 Pass by Value
---- 메소드 내에서 변경된 정보는 실제로 적용되지 않음
-- 참조 자료형은 Paass by Reference
---- 메소드 내에서 변경된 정보가 실제로 적용
'Java' 카테고리의 다른 글
Java의 신_Chapter 10_Inheritance (0) | 2024.03.28 |
---|---|
Java의 신_Chapter 09_Package (0) | 2024.03.28 |
Java의 신_Chapter 07_Array (0) | 2024.03.27 |
Java의 신_Chapter 06_Condition (0) | 2024.03.27 |
Java의 신_Chapter 05_Operator (0) | 2024.03.27 |