일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
- Oracle 오류
- SQL Developer
- 카카오맵 API
- MySQL
- SEQUENCE
- Jupyter Notebook
- Usecase Diagram
- SQL
- Set
- 유스케이스 다이어그램
- 자바
- 카카오맵
- 매일 타자연습
- typing test
- Java
- Kakao Oven
- oracle 11g
- Python
- python 기초
- database
- oracle
- The Network Adapter could not establish the connection
- 10fastfingers.com
- Kakao 지도 API
- Oracle 18c
- 데이터베이스 접속
- CSV
- tuple
- ORA-1017
- 카카오 오븐
- Today
- Total
Another Brain
5일차_ 주석문, 생성자(Constructor), 생성자 중복정의, this keyword 본문
## worker method
-- 호출에 의해서 수행되는 메서드
public int doA(xxx) {
return xxx;
}
public void doC() {
if () {
return;
}
....
}
## caller method
-- 필요에 의해서 다른 메서드를 호출하는 메서드
public void doB() {
xxx = doA(xxx);
}
## class 확장
1. DTO Class(Domain Class)
관리해야할 값을 가지고 있는 객체들 = 도메인
-- StudentScore
-- Member
2. Service Class
-- 실제 제공해야하는 서비스 기능 모델링
-- StudentScoreService : 조회, 등록, 수정, 총점, 평균 등
-- MemberService : 요구사항 분석 설계
3. Test Class
-- main() 시작메서드 시작클래스
## 클래스 의존관계
-- 먼저 생성(작성)
## 주석문
-- 주석(comment)은 개발자가 보기위한 도움글
-- 유지보수 목적 주석 가독성, 이해성 작성
-- 코드와 주석 분리 작성
-- 주석종류
1. // 한줄 주석
2. /* 여러줄 주석내용 */
3. API 문서 주석
>> 형식 : /** api 문서 주석 내용 기술 */
>> 선언위치 : 클래스 선언문, 멤버변수 선언문, 메서드 선언문, 생성자 선언문 앞에 위치
>> api 문서 주석 구성요소 : html tag, plain-text, api 문서 전용 어노테이션 태그
>> html tag : <pre> ... </pre> //
>> api 문서 전용 어노테이션 태그 :
@author 작성자이름
@version ver.1.0 코드버전
@param 매개변수명 설명
@return 반환값 설명
@see
## 개발이 완료(테스트 완료 정상 수행 가능)
-- jdk\bin> javadoc.exe -d docs\api -author -public *.java
-- 지정한 html 형식의 api 문서파일 자동 생성
-- 개발시에 api 문서 주석작성 필수*******
------------------------------
## 생성자(Constructor)
## 생성자 중복정의
## this 키워드
------------------------------
## 생성자(Constructor)
-- 역할(목적)
1. 객체생성시에 멤버변수 데이터 초기화 : Domain => 중복정의 : 전체속성, 필수속성
2. 객체서비스 되기전에 선행처리해야하는 로직 수행 : Service => 아규먼트로 전달받은 배열크기로 배열생성 할당 , 중복정의
-- 호출 시점
>> new 객체 생성시에 자동 호출 수행
-- 특징
>> 모든 클래스는 최소 1개 이상의 생성자가 존재해야함
>> 생성자이름 클래스이름과 동일
>> 아규먼트(갯수, 순서, 타입) 중복정의 가능
>> 반환타입 표기해서는 안됨
-- 기본생성자(default constructor)
>> 개발자가 명시적으로 생성자를 1개도 정의하지 않으면 javac(컴파일시점) 자동으로 제공하는 생성자
>> 기본생성자 형식 : no arguments, empty body
>> public 클래스이름(){}
## 생성자 중복정의
-- 권장 : 개발자 명시적으로 생성자 중복정의시에 기본생성자도 함께 중복정의(이유: 상속)
-- 필요에 의해서 기본생성자를 제공하지 않는 경우 있음 :
>> java.lang.Integer
>> Wrapper API
## this 키워드
-- 객체생성시에 자동으로 제공하는 참조변수
-- 사용방법 :
1. 현재 객체를 지칭 : this
2. 멤버변수 지칭 : this.멤버변수명
>> 멤버변수명과 지역변수명을 동일하게 사용가능
>> 멤버변수를 this 식별가능하기때문에(편리)
3. 현재 객체의 다른생성자를 호출시에 사용
>> 첫번째 수행문 위치
>> this(params)
>> 생성자 중복정의시에 효율적 : 중복 코드 제거, 로직의 일관성 유지, 유지보수 편리
>> 객체생성시에 공통 로직 : 생성자 위임설계해서 this() 호출 사용
## 클래스 구성요소 순서
1. 멤버변수
2. 생성자
>> 기본생성자
>> 필수초기화생성자
>> 전체초기화생성자
3. 메서드
'P > JAVA' 카테고리의 다른 글
7일차_ 6일차 + Class, static, final (0) | 2021.05.27 |
---|---|
6일차_ 객체지향 특징(Object Oriented Programming; OOP) (0) | 2021.05.26 |
mission_java_회원관리시스템_요구사항 : 구성요소 분석 및 설계 (0) | 2021.05.25 |
mission_java_RandomTeamTest (0) | 2021.05.25 |
4일차_ 클래스(class), 객체(object), 멤버변수, 메서드, 패키지(package), MVC Pattern (0) | 2021.05.25 |