1. 인터넷 쇼핑몰 프로그램에 사용하기 위해 다음과 같은 클래스를 정의했습니다. 이 클래스를 자바 클래스로 선언하십시오.
[ 이름 ] 상품 정보 클래스 |
[ 데이터 ] 상품코드 상품명 제조사 표준단가 할인율 |
[ 기능 ] 할인율을 변경한다 판매가를 계산한다 |
단, 이 클래스를 선언할 때 다음과 같은 요구사항을 지켜야 합니다.
모든 필드값을 파라미터로 받는 생성자와 할인율을 뺀 나머지 필드값만 파라미터로 받는 생성자를 모두 만들어야 합니다.
판매가는 표준 단가에서 할인율만큼을 공제한 금액으로 계산해야 합니다.
2. 다음의 프로그램은 잘못된 프로그램입니다. 어떤 부분이 잘못되었는지 찾고, 잘못된 이유를 설명하십시오.
final 로 선언된 필드는 선언문이나 생성자에서 반드시 초기화해야만 한다.
3. 사각형을 표현하는 다음과 같은 클래스가 있습니다.
이 클래스의 width 와 height 필드값이 0 이하가 안 되도록 만들려면 어떻게 해야 할까요? 모든 경우를 다 감안하여 해결 방안을 구하십시오.
1) 예외 상황이 발생했을 때 조건문을 걸어서 값의 범위를 조정할 수 있다.
2) 예외 상황이 발생했을 때 예외를 던질 수 있다.
4. 다음은 인터넷 게시판의 게시글을 표현하는 클래스입니다.
일련번호에 해당하는 seqNo 필드의 값을 생성자 파라미터로 받는 것이 아니라, 새로운 개체가 생성될 때마다 자동으로 붙여지게 하려고 합니다. 처음으로 생성되는 BBSItem 개체에는 1, 두 번째로 생성되는 BBSItem 개체에는 2, 이런 식으로 일련번호가 붙여지도록 이 클래스를 수정하십시오.
static 변수를 사용해서 내부적으로 증가시킨 번호를 할당하고, 생성자에서 seqNo 을 파라미터로 받지 않는다.
5. 다음의 프로그램에는 잘못된 곳이 있습니다. 어떤 부분인지 찾고, 그 이유를 설명하십시오.
static 메서드 내부에서는 instance 메서드를 호출할 수 없다. 다음과 같이 static 키워드를 추가해야만 한다.
다음과 같은 결과가 나온다.
******************************
Hello, Java
------------------------------
'Programming > 뇌를 자극하는 Java 프로그래밍' 카테고리의 다른 글
[ 뇌를 자극하는 Java 프로그래밍 ] 7장, Excercise 7-1 (0) | 2013.04.14 |
---|---|
[ 뇌를 자극하는 Java 프로그래밍 ] 6장, 이것만은 알고 갑시다 (4) | 2013.04.11 |
[ 뇌를 자극하는 Java 프로그래밍 ] 6장, Excercise 6-2 (0) | 2013.04.11 |
[ 뇌를 자극하는 Java 프로그래밍 ] 6장, Vitamin Quiz, 추상 클래스의 생성자 (0) | 2013.04.11 |
[ 뇌를 자극하는 Java 프로그래밍 ] 6장, Excercise 6-1 (0) | 2013.04.11 |
[ 뇌를 자극하는 java 프로그래밍 ] 5장, Vitamin Quiz, 객체를 만들지 못하게 하는 방법 (0) | 2013.04.10 |
[ 뇌를 자극하는 Java 프로그래밍 ] 5장, Excercise 5-4 (0) | 2013.04.10 |
[ 뇌를 자극하는 Java 프로그래밍 ] 5장, Vitamin Quiz, private 필드의 장단점 (2) | 2013.04.10 |
[ 뇌를 자극하는 Java 프로그래밍 ] 5장, Excercise 5-3 (0) | 2013.04.10 |
[ 뇌를 자극하는 Java 프로그래밍 ] 5장, Excercise 5-2 (0) | 2013.04.10 |