본문으로 바로가기

[Java]또 다른 객체 만들기

category Java 2022. 2. 15. 00:29
02 객체지향 프로그래밍
100%
또 다른 객체 만들기

 

실습 내용

또 다른 객체 만들기

여러 객체 생성?

하나의 잘 설계된 클래스로, 여러 개의 객체를 만들 수 있다. 이는 마치, 붕어빵틀로 여러개의 붕어빵을 만드는 것과 같다.

두 객체 생성 예

아래는 Bicycle 클래스를 통해 두 객체를 생성하는 예다.

// 자전거 객체를 만들고, b1 변수에 대입
Bicycle b1 = new Bicycle();

// 자전거 객체 b2 생성
Bicycle b2 = new Bicycle();

생성된 객체는 변수를 통해 접근할 수 있습니다. 여기에 닷 연산자(.)를 추가하면 해당 객체의 필드에 접근할 수 있다.

// 자전거 객체 b2의 필드값 초기화
b2.name = "전기 자전거";
b2.weight = 25.34;
b2.price = 799000;

문제

주어진 코드는 Bicycle 객체 b1을 생성하고 그 정보를 출력하는 코드이다. 해당 코드를 수정하여, 출력 예와 같은 결과를 얻으시오.

출력 예

b1->{로드형 자전거, 7.25, 326000}
b2->{산악형 자전거, 10.68, 429000}

 

/* 메인 클래스 */
public class BicycleTest {
  public static void main(String[] args) {
    // 자전거 객체 생성
    Bicycle b1 = new Bicycle();

    // 객체 필드값 초기화
    b1.name = "로드형 자전거";
    b1.weight = 7.25;
    b1.price = 326000;

    // 객체 정보 출력
    System.out.printf("b1->{%s, %.2f, %d}\n", b1.name, b1.weight, b1.price);
    
    /* 1. 새 자전거 객체 b2를 생성하시오. */
    /* 2. b2 객체의 필드를 초기화하시오. */
    /* 3. b2 객체 정보를 출력하시오. */
  }
}

/* 자전거 클래스 */
class Bicycle {
  /* 필드 */
  String name;    // 이름
  double weight;  // 무게
  int price;      // 가격

  /* 메소드 */
  void move() {
    System.out.println("자전거를 타고 이동합니다.");
  }
  
  void horn() {
    System.out.println("따르르릉! 지나갈게요~");
  }
}

풀이

BicycleTest 라는 메인 클래스와 Bicycle 클래스 두개의 클래스가 존재한다.  이때 문제풀이를 위해

 

b2라는 새로운 객체를 생성 해야 한다. -> 해당객체의 필드를 초기화 한다. ->출력 한다.

 

/* 메인 클래스 */
public class BicycleTest {
  public static void main(String[] args) {
    // 자전거 객체 생성
    Bicycle b1 = new Bicycle();

    // 객체 필드값 초기화
    b1.name = "로드형 자전거";
    b1.weight = 7.25;
    b1.price = 326000;

    // 객체 정보 출력
    System.out.printf("b1->{%s, %.2f, %d}\n", b1.name, b1.weight, b1.price);
    
    /* 1. 새 자전거 객체 b2를 생성하시오. */
		Bicycle b2 = new Bicycle();
    /* 2. b2 객체의 필드를 초기화하시오. */
		b2.name = "산악형 자전거";
		b2.weight = 10.68;
		b2.price = 799000;
    /* 3. b2 객체 정보를 출력하시오. */
		System.out.println("b2->{" + b2.name + ", " + b2.weight + ", " + b2.price + '}'); //또는
		System.out.printf("b2->{%s, %.2f, %d}\n", b2.name, b2.weight, b2.price);
  }
}

/* 자전거 클래스 */
class Bicycle {
  /* 필드 */
  String name;    // 이름
  double weight;  // 무게
  int price;      // 가격

  /* 메소드 */
  void move() {
    System.out.println("자전거를 타고 이동합니다.");
  }
  
  void horn() {
    System.out.println("따르르릉! 지나갈게요~");
  }
}

구름에듀-그림으로 배우는 자바

'Java' 카테고리의 다른 글

[Java] 문자열 변수  (0) 2022.02.16
[Java] 인스턴스 메소드 호출  (0) 2022.02.16
[Java]객체 생성과 필드 값 변경  (0) 2022.02.14
[Java]클래스 구현하기  (0) 2022.02.14
[Java]클래스와 객체  (0) 2022.02.14

코딩 공부하는 블로그
블로그 이미지 서하현 님의 블로그
VISITOR 오늘 / 전체