1. Boilerplate Code(자주 반복되는 코드)
- 이클립스 기능
- 외부 기능
2. LOMBOK
- 설치법
- 사용법
- 특징
3. 클래스 배열
4. static
- 객체 변수/메소드
- 정적 변수/메소드
1. Boilerplate Code(자주 반복되는 코드)
(1) 이클립스 기능
- Context Menu -> Source
- Code Template(syso, main, reader ...) or Code Sniper(코드 조각)
(2) 외부 기능
- Lombok(롬북) Library -> 설치
2. LOMBOK
- Lombok사이트 접속 (projectlombok.org/download)
- 다운로드 파일.jar을 더블클릭해서 열거나, 안나오면 명령프롬트창(cmd) 열어서 다음과 같이 입력
- 이클립스 해당 프로젝트에 lib 폴더 생성
- 해당 프로젝트 우클릭 Build Path - Configure Build Path 클릭
- 라이브러리 -> 설치한 lombok.jar 파일 apply
(1) 사용법
import lombok.Data;
import lombok.Getter;
import lombok.Setter;
//@명칭으로 클래스 위에 입력
@Data
@Getter
@Setter
public class Test {
private String name;
private int age;
}
//해당 클래스의 변수 name, age가 Getter, Setter 자동 생성됨.
(2) 특징
- Lombok을 사용하게되면 Getter, Setter가 안보이므로 개발자 개입 X , 유효성검사 & 데이터 조작 X
- Lombok은 당연히 닫힌 환경에서 사용해야 한다.
<객체를 사용하는 환경>
1. 열린 환경
- 내가 만든 클래스를 소통이 없는 다른 사람이 사용할 수 있는 환경
2. 닫힌 환경
- 내가 만들 클래스를 나만 사용하거나, 의사소통이 아주 긴밀한 사람들만이 사용할 수 있는 환경
- 유효성 검사가 필요없는 클래스 멤버
3. 클래스 배열
- 클래스 배열 생성시 초기화를 항상 꼭 해줘야함
- 예시
public static void main(String[] args) {
Item[] items = new Item[3];
items[0] = new Item();
items[1] = new Item();
items[2] = new Item();
items[0].setName("키보드");
items[0].setColor("검정");
items[0].setPrice(50000);
System.out.println(items[0].getName());
System.out.println(items[0].getColor());
System.out.println(items[0].getPrice());
}
class Item {
private String name;
private String color;
private int price;
public String getName() {return name;}
public void setName(String name) {this.name = name;}
public String getColor() {return color;}
public void setColor(String color) {this.color = color;}
public int getPrice() {return price;}
public void setPrice(int price) {this.price = price;}
}
//output
----> 키보드
----> 검정
----> 50000
4. static
(1) 객체 변수/메소드
- 객체 변수 : 객체(개인)이 각각의 자신만의 값을 가져야 하는 경우에 사용한다.
- 객체 메소드 : 객체(개인)이 하는 행동을 구현하는 경우(개인의 데이터를 사용해서) 행동한다.
(2) 정적 변수/메소드
- 정적 변수(static) : 객체가 속한 클래스의 모든 객체가 동일한 값을 가져야 하는 경우에 사용한다.
- 정적 메소드(static) : 객체가 하는 행동이 개인의 행동이 아닌 전체를 대변하는 행동을 구현하는 경우 사용한다.
(3) 요약
- 개인정보 ---> 객체 변수 저장 ---> 객체 메소드로 행동
- 공용정보 ---> 정적 변수 저장 ---> 정적 메소드로 행동
MEMO>
# 이클립스 Getter Setter 자동 만들기 기능
--> 우클릭 -> source -> Generate Getters and Setters ... 클릭
# 모든 예외 에러중에 가장 많이 나온다 --> Error : java.lang.NullPointerException:
# Ctrl + tap : 탭전환
# Alt + 좌, 우 : 열었던 히스토리 전환
# 점점 이클립스의 편리한 기능을 알게되는데, 코드가 익숙해질 때 까지 직접 손으로 타이핑 하자!
과제
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<script>
let 출생년도 = prompt('출생년도를 입력하세요');
let 나이 = 2022-parseInt(출생년도);
if(출생년도 === "" || 출생년도==0 || 출생년도 === null)
{alert("입력오류")
}else if (나이 >= 19)
{alert ("3000원")
}else if(나이 >=7)
{alert("1500원")
}else if(나이 <7)
{alert("무료")
};
</script>
</body>
</html>
'인천일보아카데미 > - 학습일지' 카테고리의 다른 글
[학습일지]JAVA교육일지 29일차 (0) | 2022.06.09 |
---|---|
[학습일지]JAVA교육일지 28일차 (0) | 2022.06.08 |
[학습일지]JAVA교육일지 26일차 (0) | 2022.06.08 |
[학습일지]JAVA교육일지 25일차 (0) | 2022.06.08 |
[학습일지]JAVA교육일지 23일차 (0) | 2022.06.04 |