요약 - 간단한 계산기
Coddy Java 여정의 객체 지향 프로그래밍 섹션에 포함된 레슨 — 87개 중 9번째.
챌린지
어려움지금까지 배운 모든 개념을 사용하여 완전한 Calculator 클래스를 작성하세요:
- 필드:
name(String),memory(double),operationCount(int)를 위한 private 필드 - 생성자: 매개변수가 있는 생성자와
this()체이닝을 사용하는 기본 생성자 - this 키워드:
this를 사용하여 필드에 값을 할당하고 메서드에서 필드에 접근 - Getter:
getName(),getMemory(),getOperationCount() - 메서드:
add,subtract,multiply,divide,power
add 메서드는 그 결과를 memory에 저장합니다. 모든 메서드는 operationCount를 증가시킵니다. divide 메서드는 0으로 나눌 경우 0을 반환합니다. power 메서드는 Math.pow()를 사용합니다.
직접 해보기
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
String name = scanner.nextLine();
double num1 = Double.parseDouble(scanner.nextLine());
double num2 = Double.parseDouble(scanner.nextLine());
Calculator calc = new Calculator(name);
System.out.println("Calculator: " + calc.getName());
System.out.println("Memory: " + calc.getMemory());
System.out.println("Add: " + calc.add(num1, num2));
System.out.println("Subtract: " + calc.subtract(num1, num2));
System.out.println("Multiply: " + calc.multiply(num1, num2));
System.out.println("Divide: " + calc.divide(num1, num2));
System.out.println("Divide by zero: " + calc.divide(num1, 0));
System.out.println("Memory: " + calc.getMemory());
System.out.println("Power: " + calc.power(num1, num2));
System.out.println("Operations: " + calc.getOperationCount());
}
}객체 지향 프로그래밍의 모든 레슨
4상속
상속의 기초 (extends)super 키워드메서드 오버라이딩 (@Override)생성자 체이닝Object 클래스단일 및 다중 레벨 상속다중 클래스 상속이 불가능한 이유요약 - 직원 계층 구조