출처 : DO IT! 자바프로그래밍 (저 : 박은종) INTERFACE 인터페이스 인터페이스란 인터페이스와 다형성 인터페이스 요소 살펴보기 인터페이스 활용하기 인터페이스란 인터페이스는 구현 코드가 없다. 추상 메서드와 상수로만 이루어져 있다. 이러한 인터페이스는 클래스 혹은 프로그램이 제공하는 기능을 명시적으로 선언하는 역할을 한다. - implements : 인터페이스에서는 인터페이스에 선언한 기능을 클래스가 구현한다는 의미로 implements 예약어를 사용 구현하는 클래스에서는 인터페이스에 선언된 추상메서드를 구현한다. package Interface; public interface Calc { double PI = 3.14; int ERROR = -99999999; int add(int num1,..
출처 : DO IT! 자바프로그래밍 (저 : 박은종) 추상 클래스 추상클래스 템플릿 메서드 템플릿 메서드 응용 final 예약어 ### 추상 클래스 : 클래스를 구현할 때 메서드 몸체를 구현하지 않고 선언만 하는 메서드를 포함한 클래스이다. ※abstract : 추상클래스나 메서드를 선언할 때 쓰는 예약어이다. 추상클래스는 상속과 깊은 관련이 있다. 추상 클래스를 사용하는 이유도 상속을 전제로 사용하기 때문이다. Car , aiCar , AutoCar 클래스가 있다. Car 클래스에는 drive, stop 메소드가 있다. 해당 메소드는 aiCar AutoCar 클래스에서 모두 사용되는 메소드이다. 하지만, 두 메소드는 각각의 클래스에서 표현하고자 하는게 다르다. 이를 위해서 각각의 클래스에서 추상 메소드..
퀵 정렬 퀵 정렬은 기준점을 중심으로 작은 그룹과 큰 그룹으로 나누어서 정렬한다. 배열 - (3,5,2,4,6,1) 주어진 배열에서 배열의 첫번째 요소의 인덱스 값(start=0)와 마지막 인덱스 값(end=5)로 양쪽 끝에서 시작하여, 앞쪽 요소값이 pivot 값 보다 큰 값이 나올 때 까지 인덱스를 높여가고, 뒤쪽 요소값이 pivot 값 보다 작은 값이 나올 때 까지 인덱스를 줄여간다. 인덱스를 줄이고 높이는 것을 멈추면 해당 값을 swap 하여 pivot 값을 중심으로 요소들을 정렬해준다. Partition (구분) void partition(int a[], int start, int end){ int pivot = a[(start+end)/2]; do{ while(a[start]pivot) end..

출처 : DO IT! 자바프로그래밍 (저 : 박은종) # This 예약어 -> this는 생성된 인스턴스 스스로를 가리키는 예약어이다. class Birthday { int day; int month; int year; public void setYear(int year) { this.year = year; } public void PrintThis() { System.out.println(this); } } public class Exam1 { public static void main(String[] args) { Birthday bDay = new Birthday(); bDay.setYear(2000); System.out.println(bDay); bDay.PrintThis(); } } this가..
출처 : DO IT! 자바프로그래밍 (저 : 박은종) Class class는 객체의 속성과 기능을 코드로 구현한 것이다. class를 정의하기 위해서는 클래스 이름, 맴버변수, 메서드가 있어야한다. 클래스 이름 - 반드시 대문자로 시작한다. 맴버변수 - 속성(property), 특성(attribute) 라고 표현한다. 맴버변수의 속성에 따라 자료형을 선언해준다. (int / String ...) 변수의 자료형은 기본 자료형과 참조 자료형이 있다. 기본 자료형 (int / long / float / double ...) , 참조 자료형 (String / Date / Student(직접 만듦) ...) 메서드 클래스의 맴버변수를 이용해 함수처럼 활용하는 것, 클래스 기능을 구현하는 것 # 클래스와 인스턴스 ..