public void printValues(String prefix, String... values) {
for (String value : values) {
System.out.println(prefix + value);
}
}
public void variable(String s, String ss, String sss) { System.out.println(s); System.out.println(ss); System.out.println(sss); } }
여기서 메인문에 t.variable("A","B","C","D")를 명령하면 인자가 맞지 않아서 오류가 뜰것이다.
public class test {
public static void main(String[] args) {
test t = new test();
t.variable();
t.variable("A");
t.variable("A","B");
t.variable("A","B","C");
t.variable("A","B","C","D");
}
public void variable(String ... s) {
System.out.println(s);
}
}
abstract class 클래스이름 {
...
public abstract void 메서드이름();
}
interface 인터페이스이름 {
public static final 상수이름 = 값;
public abstract void 메서드이름();
}
그림을 보고 이해해보자!

스타크래프트에서 나오는 마린,메딕 등등 여러가지 유닛등이 있을것이다.
중요한것은 모든 유닛은 해당하는 체력,마력등이 모두 공통적으로 있다는것이다.
이때 이러한 공통적이면서 가장 보편적인 미완성 설계도가 바로 추상클래스이다.
아래 클로킹이라던가 공격이 되는데 공중공격이 가능하고 지상공격이 되고와 같이 기능적인 면을 수행하는것이 인터페이스라고 이해하면 된다.
인터페이스가 다중상속이 된다는 의미는 레이스가 클로킹과 공중 지상이 모두 공격이 가능하다는게 보일것이다.
※ 데이터베이스에서 커서라는 개념이 나오는데 마우스 커서가 아니라 데이터베이스속에서 특정 로우 특정 컬럼에서의 위치를 나타내는 개념(인덱스)이 커서이다.
콜랙션은 한방향으로만 이동함