class 문제1
이전 걸음에서 class와 객체에 대해서 배워봤습니다. class를 만들고 그 class를 이용해 객체를 생성해서 그 객체를 사용해서 프로그램을 구현을 한다는 사실은 여러분들도 다 아시고 있으실 겁니다. 그럼 이제 당연히 이론을 했으면 문제를 풀어봐야 한다고 생각을 하시지 않으신가요? 저도 당연히 문제를 풀어서 다져야 한다고 생각을 하고 있습니다.
class와 객체를 활용하여 문제를 해봐야 합니다. 그러면 당연히 정의를 하는 class를 하고 객체화를 진행하여 동작이 되도록 해야 합니다. 이전 걸음을 잘 활용하여서 이번 문제를 풀 수 있도록 해주시면 될 것 같습니다. 이제 문제를 확인하도록 하겠습니다.
연필,지우개,펜 class 문제를 해보도록 하겠습니다. 연필과 지우개 펜을 class를 만들어서 만들고 객체화를 진행하여서 객체를 생성하고 객체로 동작하도록 하면 됩니다. 중요한 것은 객체화를 꼭 고민을 하여서 class를 만들고 객체로 만들어서 사용을 할 수 있도록 하시면 됩니다. 정답은 다를 수 있지만 class와 객체의 사용은 비슷할 수 있습니다. 문제를 한번 풀어보고 정답을 확인해보세요.
연필, 지우개, 펜 class 문제
참고
※ class 연습을 위해서 파일명과 같은 class 위에 문제에 필요한 class를 만들어서 구현하세요.
위 문제를 파일명과 같은 Class에 Main문에 소스를 구현해 주세요.
실행 관련 걸음 : 다섯 걸음, 여섯걸음
참고해주세요
class Pencil{
String color;
void write() {
System.out.println(color+"연필로 적습니다.");
}
}
class Eraser{
String type;
void eraser() {
System.out.println(type+"지우개로 지웁니다.");
}
}
class Pen{
String color;
String type;
void write() {
System.out.println("제조사가 " +type+"에"+color
+"펜으로 적습니다.");
}
}
public class Q2 {
public static void main(String[] args) {
// TODO Auto-generated method stub
Pencil p1 = new Pencil();
Pencil p2 = new Pencil();
Pencil p3 = new Pencil();
Pencil p4 = new Pencil();
p1.color = "빨간";
p2.color = "파란";
p3.color = "주황";
p4.color = "노란";
Eraser e1 = new Eraser();
Eraser e2 = new Eraser();
e1.type = "잠자리";
e2.type = "모닝글로리";
Pen pen1 = new Pen();
Pen pen2 = new Pen();
Pen pen3 = new Pen();
pen1.color="검정색";
pen1.type="모나미";
pen2.color="초록색";
pen2.type="제트스트림";
pen3.color="베이비블루";
pen3.type="워터맨";
p1.write();
p2.write();
p3.write();
p4.write();
e1.eraser();
e2.eraser();
pen1.write();
pen2.write();
pen3.write();
}
}
생각을 해보기
이전 내용인 class와 객체 대해서 한번 자세히 보면 이번 연필, 지우개, 펜 문제도 이해를 좀 더 잘 할 수 있습니다. 또한 꼭 분석을 통해 동작에 대한 이해를 하신다면 분명히 도움이 되실 수 있습니다.
※ 참고로 이 문제를 class와 객체에 대해 생각을 하시면 좋습니다.
함께 보면 좋은 글
§ Java 첫 걸음 변수와 자료형§ Java 두 걸음 연산자
§ Java 세 걸음 형 변환
§ Java 네 걸음 Eclipse 설치
§ Java 다섯 걸음 Eclipse 개발 준비
§ Java 여섯 걸음 출력
§ Java 일곱 걸음 출력
§ Java 여덟 걸음 문제 풀기 1
§ Java 아홉 걸음 한글 깨짐
§ Java 열 걸음 제어문
§ Java 열 한걸음 if문
§ Java 열 두걸음 switch문
§ Java 열 세걸음 while문
§ Java 열 네걸음 for문
§ Java 열 다섯걸음 중첩 및 주의 사항
§ Java 열 여섯걸음 문제 1
§ Java 열 일곱걸음 문제 2
§ Java 열 여덟걸음 break continue
§ Java 열 아홉걸음 random
§ Java 스물 걸음 별 찍기 1
§ Java 스물 한걸음 별 찍기 2
§ Java 스물 두걸음 가위 바위 보 게임
§ Java 스물 세걸음 배열
§ Java 스물 네걸음 배열 활용
§ Java 스물 다섯걸음 Rando 활용 문제
§ Java 스물 여섯걸음 숫자 야구 게임
§ Java 스물 일곱 걸음 배열 숫자 야구 게임
§ Java 스물 여덟 걸음 다차원 배열
§ Java 스물 아홉 걸음 다차원 배열 심화
§ Java 서른 걸음 다차원 배열 문제
§ Java 서른 한 걸음 가변 배열
§ Java 서른 두 걸음 메소드(함수)
§ Java 서른 세 걸음 메소드형태
§ Java 서른 네 걸음 메소드 기초활용
§ Java 서른 다섯 걸음 메소드 문제1
§ Java 서른 여섯 걸음 메소드 구조 및 활용
§ Java 서른 일곱 걸음 메소드문제 2
§ Java 서른 여덟 걸음 Call by Value
§ Java 서른 아홉 걸음 Call by Reference
§ Java 마흔 걸음 메소드 숫자 야구 게임
§ Java 마흔 한걸음 재귀 메소드
§ Java 마흔 두걸음 재귀 메소드 문제
§ Java 마흔 세걸음 class(클래스)란?
§ Java 마흔 네걸음 class(클래스) 예제