1. 접근 제한자
종류 : public / protected / default / private
접근 제한자는 클래스, 멤버변수, 메소드에 사용 가능함
클래스 - public default
멤버변수 및 메소드 - 위의 4개 다 사용 가능
1-1. public : 같은 프로젝트 내에서는 어디든 접근 가능
1-2. default : 같은 패키지 내에서는 접근 가능 (아무것도 안 적었을 때)
1-3. private : 선언된 클래스 내에서만 접근 가능
2. 객체 배열
모든 자료형에 대해 배열을 만들 수 있으며, 객체도 하나의 자료형이기 때문에 배열로 만들 수 있다.
//member 클래스에는 이름과 나이 정보를 담고 있음
//회원 정보를 등록하는 생성자, 회원의 정보를 각각 리턴하는 메소드, 회원의 정보를 출력하는 메소드를 담고 있음
public class Member {
private String name;
private int age;
public Member(String name, int age) {
this.name = name;
this.age = age;
}
public String getName() {
return name;
}
public int getAge() {
return age;
}
public void showInfo() {
System.out.println("이름 : " + name);
System.out.println("나이 : " + age);
}
}
//Member 클래스에 대한 객체를 3개 저장할 수 있는 배열을 만듦
public class MemberTest {
public static void main(String[] args) {
//Member 객체가 들어갈 수 있는 공간 3개를 생성
Member[] members; //선언
members = new Member[3]; //생성
//Member 객체 생성 후 배열에 담기
Member m1 = new Member("홍길동",20);
members[0] = m1;
Member m2 = new Member("이순신",30);
members[1] = m2;
//동시에
members[2] = new Member("유관순",40);
//members 배열의 0번째 요소에 들어간 회원의 정보 출력
members[0].showInfo();
//members 배열에 저장된 모든 회원의 정보 출력
for (int i = 0; i < members.length; i++) {
members[i].showInfo();
}
//for-each문으로
for (Member member : members) {
member.showInfo();
}
//회원 중 이름이 "홍길동"인 회원의 나이 출력
for (int i = 0; i < members.length; i++) {
if(members[i].getName().equals("홍길동")) {
System.out.println(members[i].getAge());
break;
}
}
//for-each문으로
for (Member member : members) {
if(member.getName().equals("홍길동")) {
System.out.println(members.getAge());
break;
}
}
}
}
**새롭게 알게 된 것
네이밍 관습 -
초기화할 때 (Initialization) init~
등록할 때 (Register) reg~
'TIL' 카테고리의 다른 글
| 230201 [Java] (다형성 / 형 변환 / 메소드 오버라이딩 / Object 클래스) (0) | 2023.02.01 |
|---|---|
| 230131 [Java] (static / 오버로딩 / 상속) (0) | 2023.01.31 |
| 230127 [Java] (생성자 / this / setter & getter) (0) | 2023.01.27 |
| 230126 [Java] (클래스) (0) | 2023.01.26 |
| 230125 [Java] TIL (이중반복문 / 2차원 배열 / 메소드) (0) | 2023.01.25 |