3. Garbage Collection
-finalize()
4 this
- 참조 변수
ㄴ현재 실행중인 인스턴스의 주소
- read only
- 클래스의 모든 메서드는 반드시 참조변수를 인자로 가지고 있다.
자바스크립트 자체에서 만들어진 인자값에는 this가 포함되어 있음.
즉, 두 개의 인자가 있지만, 10 앞에는 this 인자가 하나 더 들어가져 있음.
100번지에 있는 ivalue, 200번지에 있는 ivalue 등.
다시 말해.
생성자 앞에 this값을 적어줌.
그러나 자동적으로 생성되기 때문에 값을 입력하지 않음. (항상 따라다니고 있음)
단 예외가 있는데, 벨류값이 같을 때는 this를 반드시 써줘야 함.
6. Class part2
배열 (하나의 클레스에서 많은 데이터를 다루기 위함)
- 정의 : 같은 이름으로 정의된 연속적인 공
- 자바에서는 배열을 객체로 취급한다.
- 종류 - | |
1차원 배열 (선형배열 | 다차원 배열(2차원 이상) |
2차원 배열의 각 요소를 탭으로 구분하여 출력 되었고
각 행을 출력한 후에는 줄바꿈 하는 코드로 완성
- 활용
※ 1차원 배열로 할 수 있는 알고리즘.
ㄴ 검색 : 순차검색, 이진(이분) 검색, ...
※ 정렬
ㄴ Bubble Sort, Selection Sort, Insertion Sort (기본 값)
ㄴ Quick Sort, ...
※ Swap Algorithm
ㄴ int a = 5, b = 10, c ;
c = a;
a = b;
b = c;
※ Bubble sort : 서로 이웃하는 것끼리 비교하여 교체해 나가는 방식.
ㄴ 8, 7, 9, 2, 3, 6
ㄴ 7, 8, 9, 2, 3, 6
ㄴ 7, 8, 9, 2, 3, 6
ㄴ 7, 8, 2, 3, 9, 6
ㄴ 7, 8, 2, 3, 6, 9
이웃끼리 비교하여 값이 다음으로 지정 됨. 왼쪽이 클 때 값을 바꿔줌.
결국 최솟값부터 최댓값으로 변경이 되게끔 만들어줌.
987654321 = > 123456789 식.
◎ 1번은 기준으로 되고( 값이 클 때 변경) = 1 - 3 / 1 - 4 / 1 - 5 / 1 - 6으로 비교함.
ㄴ 8, 7, 9, 2, 3, 6
ㄴ 7, 8, 9, 2, 3, 6
ㄴ 7, 8, 9, 2, 3, 6
ㄴ 2, 8, 9, 7, 3, 6
ㄴ 2, 8, 9, 7, 3, 6
ㄴ 2, 8, 9, 7, 3, 6
ㄴ 2, 8, 9, 7, 3, 6
ㄴ 2, 7, 9, 8, 3, 6
ㄴ 2, 7, 9, 8, 3, 6
ㄴ 2, 7, 9, 8, 3, 6
이런 식으로 계속 이어감.
*선택정렬
기준점을 선택하여 비교하고 교환해나가는 방식
* 1차원 배열로 작성하는 성적표
불규칙 배열 / (행과 열은 규칙배열)
char name1[ ] = ['t', 'o', 'm'];
char name1[ ] = ['m', 'a' , 'r' , 'r' , 'y ];
char name1[ ] = ['j', 'o' , 'h' , 'n'; , 's', 'o', 'n'];
행.열
char name[ ] [ ] = new char [3][7];
char name[ ] [ ] = new char[3];
names[0] = new char[3];
names[1] = new char[5];
names[2] = new char[7];
String 클래스 / 문자들을 묶어줄 때 스트링 클래스를 사용.
배열 형태가 아닌, 스프링으로 글자를 묶으면 축약해서 사용할 수 있음.
그 외에도 네임즈로 스트링을 잡아 각각 포문을 실행해도 값은 나올 수 있음.
- 자바에서는 문자열을 객체로 취급한다.
최소한 알아둬야 할 것들.
concat(String str)
Contains
endsWith (Strring suffix)
startsWith (Strring suffix)
indexOf(int ch)
lastIndexOf(int ch)
isEmpty()
isBlack()
length( )
matches(String regex)
Split (String regex)
Strip()
toLowerCase()
toString()
trim()
value()