본문 바로가기

Java/본격 Java 퀴즈 기초

[Java] 원의 넓이 구하기(클래스 사용)

원의 반지름과 색상을 받아 원의 넓이 구하는 프로그램을 만들어보았다.

.

.

메인클래스와 같은 파일에 넣지않고 따로 클래스를 만들었다.

클래스와 메소드 이름을 같게해서 생성자를 만들었다.

그리고 받는 매개변수 값을 다르게 하여 오버로딩을 하였다.

package ex2;

public class Circle {
	private double radius = 1.0;
	private String color = "red";
	
	public Circle(double radius, String color) {
		this.radius = radius;
		this.color = color;
	}
	public Circle(double radius) {
		this.radius = radius;
	}
	public Circle() {}
	
	public double getRadius() { return radius; }
	public void setRadius(double radius) { this.radius = radius; }
	public String getColor() { return color; }
	public void setColor(String color) { this.color = color; }
	
	public String toString() {
		return "Circle[radius = " + radius + ", color = " + color + "]";
	}
	
	public double getArea() {
		return radius * radius * 3.14;
	}
}

.

.

메인클래스

package ex2;

public class TestCircle {

	public static void main(String[] args) {
		
		Circle c1 = new Circle(5.0);
		System.out.println(c1.toString());
		System.out.println("c1의 반지름은 " + c1.getRadius() + " 입니다.");
		System.out.println("c1의 면적은 " + c1.getArea() + " 입니다.");
		
		Circle c2 = new Circle(1.2);
		System.out.println(c2.toString());
		System.out.println("c1의 반지름은 " + c2.getRadius() + " 입니다.");
		System.out.println("c1의 면적은 " + c2.getArea() + " 입니다.");
		System.out.println("Operator '+' invokes toString() too : " + c2);
		
		Circle c4 = new Circle();
		c4.setRadius(5.0);
		System.out.println("c1의 반지름은 " + c4.getRadius() + " 입니다.");
		System.out.println("c1의 면적은 " + c4.getArea() + " 입니다.");
		System.out.println("radius is " + c4.getRadius());
		c4.setColor("Navy");
		System.out.println("Color is " + c4.getColor());
		
		// System.out.println(c4.setRadius(4.0));
	}
}
728x90
반응형