📂Java21_Package ~ 📂Java28_Polymophism
Java에서 Java 파일과 class 파일들을 폴더 단위로 관리하기 위한 목적으로 사용
📂Java21_Package
1개의 변수에 여러 개의 값을 순차적으로 저장할 때 사용
// 정수형 기억장소 10개를 관리하는 배열
int [] array1 = new int[10];
// 값을 담는다
array1[0] = 100;
array1[1] = 200;
array1[2] = 300;
// 배열 생성시 관리할 값을 넣어줌
int [] array2 = {1, 2, 3};
배열 등과 같이 순서를 가지고 데이터를 관리하는 요소에 대해 반복문을 돌리고자 할 때 사용
for (int value : array2) {
System.out.printf("value : %d\n", value);
}
// 객체의 ID를 담을 배열 생성
TestClass1 [] array3 = new TestClass1[3];
// 위의 배열은 객체의 ID를 담을 수 있는 참조 변수 3개를 가진 배열을 생성한 것
// 이에 배열 생성 후 객체를 생성하여 담아줘야 함
array3[0] = new TestClass1();
array3[1] = new TestClass1();
array3[2] = new TestClass1();
for (TestClass1 t1 : array3) {
System.out.printf("t1 : %s\n", t1);
}
📂Java23_Array
클래스를 통해 객체를 생성할 때 무조건 동작하는 요소
class TestClass1 {
}
class TestClass2 {
// 생성자
public TestClass2() { System.out.println("TestClass2의 생성자"); }
}
class TestClass3 {
public TestClass3 (int a1, int a2) {
System.out.println("a1 : %d, a2 : %d\n", a1, a2);
}
}
class Student {
String name;
int grade;
public StudentClass(String name, int grade) {
this.name = name;
this.grade = grade;
}
}
📂Java25_Constructor
메서드나 생성자를 작성할 때 매개변수의 형태를 다르게 하여 같은 이름으로 여러개를 만들 수 있도록 제공되는 개념
class TestClass1 {
int memberA;
int memberB;
public TestClass1() {
this(100, 200)
}
public TestClass1(int memberA) {
this(memberA, 200)
}
public TestClass1(int memberA, int memberB) {
this.memberA = memberA;
this.memberB = memberB;
}
}
class TestClass1 {
public int add(int a1, int a2) { return a1 + a2; }
public long add(long a1, long a2) { return a1 + a2; }
public double add(double a1, double a2) { return a1 + a2; }
}
class TestClass1 {
public int add2(int ... a1) {
int total = 0;
for (int value : a1) {
total = total + value;
}
return total;
}
}
📂Java26_Overloading
다른 클래스의 멤버 변수나 멤버 메서드를 자기 것 처럼 물려받아 사용하는 개념
class 클래스이름 extends 부모클래스
📂Java27_Inherit
객체 지향에서 다형성의 의미는 생성된 객체의 형태가 다양하다는 의미로 사용
참조변수를 통한 객체 접근
📂Java28_Polymophism