1. 인터넷 쇼핑몰 프로그램에 사용하기 위해 다음과 같은 클래스를 정의했습니다. 이 클래스를 자바 클래스로 선언하십시오.


 [ 이름 ] 상품 정보 클래스 

 [ 데이터 ]

 상품코드

 상품명

 제조사

 표준단가

 할인율

 [ 기능 ]

 할인율을 변경한다

 판매가를 계산한다


단, 이 클래스를 선언할 때 다음과 같은 요구사항을 지켜야 합니다.

모든 필드값을 파라미터로 받는 생성자와 할인율을 뺀 나머지 필드값만 파라미터로 받는 생성자를 모두 만들어야 합니다.

판매가는 표준 단가에서 할인율만큼을 공제한 금액으로 계산해야 합니다.







2. 다음의 프로그램은 잘못된 프로그램입니다. 어떤 부분이 잘못되었는지 찾고, 잘못된 이유를 설명하십시오.





final 로 선언된 필드는 선언문이나 생성자에서 반드시 초기화해야만 한다.




3. 사각형을 표현하는 다음과 같은 클래스가 있습니다.



이 클래스의 width 와 height 필드값이 0 이하가 안 되도록 만들려면 어떻게 해야 할까요? 모든 경우를 다 감안하여 해결 방안을 구하십시오.




1) 예외 상황이 발생했을 때 조건문을 걸어서 값의 범위를 조정할 수 있다.



2) 예외 상황이 발생했을 때 예외를 던질 수 있다.





4. 다음은 인터넷 게시판의 게시글을 표현하는 클래스입니다.



일련번호에 해당하는 seqNo 필드의 값을 생성자 파라미터로 받는 것이 아니라, 새로운 개체가 생성될 때마다 자동으로 붙여지게 하려고 합니다. 처음으로 생성되는 BBSItem 개체에는 1, 두 번째로 생성되는 BBSItem 개체에는 2, 이런 식으로 일련번호가 붙여지도록 이 클래스를 수정하십시오.




static 변수를 사용해서 내부적으로 증가시킨 번호를 할당하고, 생성자에서 seqNo 을 파라미터로 받지 않는다.





5. 다음의 프로그램에는 잘못된 곳이 있습니다. 어떤 부분인지 찾고, 그 이유를 설명하십시오.





static 메서드 내부에서는 instance 메서드를 호출할 수 없다. 다음과 같이 static 키워드를 추가해야만 한다.



다음과 같은 결과가 나온다.


******************************

Hello, Java

------------------------------


+ Recent posts