본문 바로가기
JAVA

[Chapter 04 객체지향] 프로그래밍 문제 답

qbang 2018. 6. 24.

한빛아카데미의 '쉽게배우는 자바프로그래밍'책의 프로그래밍 문제입니다! 공부하던 중 해설을 찾아봤는데도 없어서 저같이 답을 못찾고 계신분들을 위해 못난 실력을 공개하기로 했습니다.. 앞으로도 푸는대로 올리도록 하겠습니다! 보시고 부족한 부분은 댓글남겨주세요. 피드백은 언제나 환영입니다 :)

{2} - {1}에서 작성한 Triangle 클래스에 2개의 삼각형 넓이가 동일한지 비교하는 isSameArea()메서드를 추가하시오. 그리고 다음 코드를 사용해 테스트하시오.

 public class TriangleTest {
    public static void main(String[] args) {
     Triangle t1 = new Triangle(10.0, 5.0);
     Triangle t2 = new Triangle(5.0, 10.0);
     Triangle t3 = new Triangle(8.0, 8.0);
     System.out.println(t1.isSameArea(t2));
     System.out.println(t2.isSameArea(t3));
    }
 }

 

{3} - 회원을 관리하려고 회원을 모델링한 Member 클래스를 작성하시오. 회원 정보로는 이름, 아이디, 암호, 나이가 있다. 외부 객체는 이와 같은 회원 정보에 직접 접근할 수 없고 접근자와 설정자로만 접근할 수 있다. 그리고 모든 회원 정보를 사용해 객체를 생성할 수 있는 생성자도 있다.

 

{4} - 생상된 모든 자동차와 빨간색 자동차의 개수를 출력하는 Car 클래스를 작성하시오. 그리고 다음 코드를 사용해 테스트하시오.

 public class CarTest {
   public static void main(String[] args) {
     Car c1 = new Car("red");
     Car c2 = new Car("blue");
     Car c3 = new Car("RED");
     System.out.printf("자동차 수 : %d, 빨간색 자동차 수 : %d", Car.getNumOfCar(),Car.getNumOfRedCar());
   }
 }

 

{5} - 길이 속성만 가진 직선을 모델링한 Line 클래스를 작성하고, 다음 프로그램으로 테스트하시오.

public class LineTest {
 public static void main(String[] args) {
   Line a = new Line(1);
   Line b = new Line(1);
   System.out.println(a.isSameLine(b));
   System.out.println(a == b);
 }
}

 

{6} - 복소수를 모델링한 Complex 클래스를 작성하고, 다음 프로그램으로 테스트하시오.

 public class ComplexTest {
   public static void main(String[] args) {
     Complex c = new Complex(2.0);
     System.out.println(c.print());
     Complex c1 = new Complex(1.5, 2.5); //c라고 하면 자꾸 오류가 떠서 c1으로 바꿨습니다
     System.out.println(c1.print());
   }
 }

 

{7} - 골프채를 모델링한 GolfClub 클래스를 작성하고, 다음 프로그램으로 테스트하시오.

 public class GolfClubTest {
   public static void main(String[] args) {
     GolfClub g1 = new GolfClub();
     g1.print();
     GolfClub g2 = new GolfClub(8);
     g2.print();
     GolfClub g3 = new GolfClub("피터");
     g3.print();
   } 
 }

 

{8} - 주사위를 나타내는 Dice 클래스를 작성하고, 다음 코드를 사용해 테스트하시오.

public class DiceTest {
 public static void main(String[] args) {
   Dice d = new Dice();
   System.out.println("주사위의 숫자: " + d.roll());
 }
}

 

 

댓글