본문 바로가기

유튜브 스크립트/JAVA

[JAVA | 영상스크립트 | 백문이 불여일타!!] 클래스와 배열

https://youtu.be/7ZXYhvOO8qg

1. 문제 설명

온라인 상점의 주문관리 시스템을 만들려고 한다.

먼저, 상품 주문 정보를 담을 수 있는 ProductOrder 클래스를 만들어보자.

상품 주문을 관리하기 위해 주문 class를 생성하여 일정한 양식의 데이터를 관리하는 문제

클래스, 배열, 향상된for문을 학습할 수 있는 문제

2. 요구 사항

  1. ProductOrder클래스는 다음과 같은 멤버 변수를 포함해야 한다.
    - 상품명 ( productName )
    - 가격 ( price )
    - 주문 수량 ( quantity )
  2. ProductOrderMain 클래스 안에 main()메서드를 포함하여, 여러 상품의 주문 정보를 배열로 관리하고, 그 정보들을 출력하고, 최종 결제 금액을 계산하여 출력하자.
  3. 출력 예시와 같도록 출력하면 된다.
public class ProductOrder {
     String productName;
     int price;
     int quantity;
}
public class ProductOrderMain {
     public static void main(String[] args) {
		// 여러 상품의 주문 정보를 담는 배열 생성
		// 상품 주문 정보를 `ProductOrder` 타입의 변수로 받아 저장 
		// 상품 주문 정보와 최종 금액 출력
	} 
}

3. 문제 해결

public class ProductOrderMain {
    public static void main(String[] args) {
        ProductOrder[] orders = new ProductOrder[3];

        ProductOrder order1 = new ProductOrder();
        order1.productName = "두부";
        order1.price = 3000;
        order1.quantity = 2;
        orders[0] = order1;

        ProductOrder order2 = new ProductOrder();
        order2.productName = "김치";
        order2.price = 8000;
        order2.quantity = 1;
        orders[1] = order2;

        ProductOrder order3 = new ProductOrder();
        order3.productName = "콜라";
        order3.price = 1000;
        order3.quantity = 3;
        orders[2] = order3;

        int totalAmount = 0;
        for(ProductOrder o : orders){

            System.out.println("상품명: " + o.productName + ", 가격: " + o.price + ", 수량: " + o.quantity);
            totalAmount += o.price * o.quantity;
        }
        System.out.println("총 결제 금액:" + totalAmount);

    }
}

 

4. 스크립트

클래스 생성

먼서 객체를 사용하기 위해서는 객체를 생성하고 변수에 생성한 객체에 접근할수 있는 참조값을 담아줘야한다.

변수 선언

  • int, String처럼 클래스의 타입을 사용자 정의타입이라 하겠음.
  • 클래스는 사용자정의 타입과 변수를 선언하여 사용한다 클래스에서 선언되는 변수는 객체를 받을 수 있다.

객체 생성

  • new를 사용하여 인스턴스를 생성하면 메모리에 객체를 생성한다.
  • 이때 클래스가 가지고 있는 멤버변수를 사용하는데 필요한 메모리도 함께 확보한다.

참조값 보관

  • 객체를 생성하고 변수에 담게되는 객체에 접근할 수 있는 주소인 참조값이 들어간다.

객체 사용

  • 객체를 접근하여 사용할때는 .을 사용하면 된다.

2. 배열과 향상된 for문

배열선언과 생성

  • 사용자정의 타입도 배열을 생성할때 포함할 수 있다.
  • 선언과 생성을 동시에하여 최적화

for문 최적화

  • 인덱스길이만큼 하나씩 증가하면서 반복하는 for문
  • 배열이 사용된 뒤 반복되는 부분을 반복문으로 최적화.
  • 향상된 for문을 사용하여 반복문을 최적화.
  • orders 배열의 모든 요소를 o라는 변수로 순차적으로 접근