Notice
Recent Posts
Recent Comments
Link
«   2025/03   »
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31
Tags
more
Archives
Today
Total
관리 메뉴

archive

5장 클래스, 객체, 메소드 연습 문제 및 LAB 문제 본문

Java/스터디 예제 풀이

5장 클래스, 객체, 메소드 연습 문제 및 LAB 문제

안정민 2023. 2. 5. 06:11

1) 상자를 나타내는 box클래스를 작성하고 상세 정보 출력하기

package Box클래스작성;

public class Box {
	private int width;
	private int length;
	private int height;
	private int volume;
	
	public int getVolume() {
		return volume;
	}
	
	Box(int width, int length, int height){
		this.width=width;
		this.length=length;
		this.height=height;
		volume=width*length*height; // 생성자는 초기화 과정이니까 되도록이면 모든 지역변수 포함하는게 좋은 거 같은 논리 같음
	}
}
package Box클래스작성;

public class BoxTest {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Box b=new Box(20,20,30);
		System.out.println("상자의 부피는 "+b.getVolume()+"입니다.");
	}

}

2) 자동차 클래스 작성하기, 추가적으로 toString() 메소드를 추가하고 문자열 만들어서 반환하기

package Car;

public class Car {
	String color;
	int speed;
	int gear;
	
	public String toString() {
		return ("Car [color="+color+", speed="+speed+", gear="+gear+"]");
	}
	
	void changeGear(int gear) {
		this.gear=gear;
	}
	
	void speedup(int amount) {
		speed=speed+amount;
	}
	void speedDown(int amount) {
		speed=speed-amount;
	}
}
package Car;

public class CarTest {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Car mycar=new Car();
		mycar.color="red";
		mycar.gear=1;
		mycar.speed=60;
		System.out.println(mycar.toString());
		
		mycar.changeGear(2);
		mycar.speedup(20);
		System.out.println(mycar.toString());
		
		mycar.changeGear(1);
		mycar.speedDown(10);
		System.out.println(mycar.toString());
	}

}