국비교육 7일차
오랜만에 배워서 기억이 안나기 시작한다....
이름 규칙
1-1 공통 이름 규칙
1-2 클래스 이름 규칙
첫 글자는 대문자로 시작하며, 나머지 글자는 소문자로 표기합니다.
두 개 이상의 단어를 조합할 경우, 새로운 단어는 대문자로 시작합니다.
class MyClass {}
class Student {}
class Number {}
1-3. 메서드,변수 이름 규칙
대부분 소문자로 구성되지만, 두 개 이상의 단어를 조합할 경우 새로운 단어는 대문자로
시작합니다.
int age;
String userName;
1-4. 상수 이름 규칙
상수는 모두 대문자로 표기합니다
final double PI = 3.14159;
final int COLOR = 0xFFFFFF;
생성자
2-1. 생성자
객체가 생성될 때 'new' 키워드와 함께 자동으로 실행되는 특수한 메서드입니다.
리턴형을 명시하지 않으며, 메서드의 이름은 클래스와 동일합니다.
class Member {
Member() {
// 생성자
}
}
Member m = new Member();
2-2. 기본 생성자
class User { User() {2-4. 생성자의 활용
생성자는 메서드의 한 종류이므로 파라미터를 정의할 수 있습니다
생성자의 파라미터를 통해 멤버 변수를 초기화할 수 있다.
class Person {
private String name; // 멤버변수선언
private int age;
Person(String name, int age) {
this.name = name;
this.age = age;
}
}
은닉성
4-1. 은닉성이란?
4-2. 접근 제어자
public: 모든 곳에서 접근 가능합니다.
private: 클래스 내부에서만 접근 가능합니다.
protected: 같은 패키지 또는 하위 클래스에서 접근 가능합니다.
default (명시하지 않은 경우): 같은 패키지 내에서만 접근 가능합니다.
getter과 setter
5-1. getter 과 setter
getter: 은닉된 멤버 변수의 값을 반환하는 메서드.
setter: 파라미터로 전달된 값을 멤버 변수에 설정하는 메서드.
class Person {
private String userName;
private int userAge;
// Getter
String getUserName() {
return userName;
}
// Setter
void setUserName(String userName) {
this.userName = userName;
}
// Getter
int getUserAge() {
return userAge;
}
// Setter
void setUserAge(int userAge) {
if (userAge >= 0) {
this.userAge = userAge;
}
}
}
getter와 setter 사용 이유
6-1. 캡슐화
접근 제한자를 통해 데이터를 외부로부터 숨기거나 접근을 막고, 접근 처리를 강제합니다.
6-2. setter
멤버 변수를 설정할 때 검증 로직을 추가할 수 있습니다.
private으로 숨겨진 변수를 우회해서 바꿀때 사용하는 것
6-3. getter
필요한 정보만 제공하여 데이터의 무결성을 유지합니다.
private으로 숨겨진 변수를? 메소드를 사용할 때
6-4. 자바빈즈 (JavaBeans)
자바에서 재사용 가능한 컴포넌트를 생성할 수 있는 최소 단위입니다.
자바빈즈 클래스는 기본 생성자와 get/set 메서드를 가져야 합니다.