☆ 실습(1) - outer, inner 클래스
- 내부클래스 선언 방법(9번, 13번)
: 외부클래스명.내부클래스명 참조변수명 = 외부클래스객체.new 내부클래스
- 메인메서드와 동일한 급의 내부클래스를 만들 수 있다.
- inner클래스에서 외부클래스의 멤버변수 a,b,c를 출력하려면, 위와 같이 내부클래스 선언 방법에 따
라 인스턴스를 생성하여야 한다.
결과
☆ 실습(2) - 지역변수와 지역내부클래스
- 클래스 멤버변수의 위치는 실습(1)과 같지만, 메인메서드와 같은 레벨의 위치에 outerMethod() 메
서드가 하나 생겼고, 그 안에 지역변수 d,e가 추가되었다.
- 이 케이스는 실습(1)처럼 내부클래스의 인스턴스를 생성하지 않는다.
- 대신 outerMethod()안에서, 지역내부클래스의 인스턴스를 생성하고 내부메서드를 호출한다.
- 마지막으로 메인메서드에서 인스턴스를 생성하여 outerMethod()를 호출하면 끝!
- d는 지역변수이므로 inner클래스에서 출력이 불가능하지만, 상수 e는 출력이 가능하다.
결과
☆ 실습(3) - - 본래는 outer클래스가 필수였으나, 내부클래스가 static일 경우 outer클래스를 생성하지 않아도 접 근 가능하다. - 단, 외부클래스에 있는 static 멤버변수 c를 제외한 a,b는 출력을 포기해야 한다.
결과
☆ 실습(4) - 추상메서드 구현의 간소화! - 5~10번까지의 코딩은, 이제까지 본 오버라이딩 방법과 다르게 느껴질 것이다. - 인터페이스에서 몸통 없는 fly() 추상메서드를 강제 구현 지정하였기 때문에, fly() 추상메서드는 꼭 구현되어야 한다! - 기존에는 Ex4에 Flyer를 implements 해야 하나, 아래 그림과 같이 간소화할 수 있다! - 이 기법은 나중에 안드로이드를 배울 때 자주 쓰인다.
결과
☆ 실습(5) - java.util의 랜덤함수 - math.랜덤함수보다 훨씬 편리하다. - 정수는 nextInt() 메서드를 사용한다. - nextInt(100)이라면, 0~99까지라는 의미이다. - 그 밖에도 nextFloat, nextBoolean 등이 있다.
결과
'N스크린하이브리드앱과정 > JAVA' 카테고리의 다른 글
[4주][3일][3~4th] JAVA: 자료구조와 컬렉션(collection). Set, List. (0) | 2013.08.07 |
---|---|
[4주][2일][3~4th] 예외(Exception) 클래스. SimpleDateFormat 클래스. throws (0) | 2013.08.06 |
[3주][5일][3~4th] JAVA: Wrapper 클래스 (0) | 2013.08.02 |
[3주][4일][3~4th] StringBuffer 클래스, StringTokenizer (0) | 2013.08.01 |
[3주][2일][8th] JAVA: 연습문제 (0) | 2013.07.30 |