메서드
Coddy Dart 여정의 객체 지향 프로그래밍 섹션에 포함된 레슨 — 110개 중 6번째.
메서드는 클래스에 속하는 함수입니다. 메서드는 객체가 수행할 수 있는 동작이나 행위를 정의합니다.
다음은 메서드가 포함된 클래스의 예입니다:
class Calculator {
void greet() {
print('Hello! I am a calculator.');
}
int add(int a, int b) {
return a + b;
}
int multiply(int x, int y) {
int result = x * y;
print('$x x $y = $result');
return result;
}
}Dart의 메서드 시그니처에는 항상 반환 타입이 포함됩니다. 메서드가 아무것도 반환하지 않을 때는 void를 사용하세요.
계산기 객체를 생성합니다:
Calculator myCalc = Calculator();매개변수가 필요 없는 메서드를 호출합니다:
myCalc.greet();매개변수와 함께 메서드를 호출하고 반환 값을 받습니다:
int sumResult = myCalc.add(5, 3);
print(sumResult);출력과 값 반환을 모두 수행하는 메서드를 호출합니다:
int product = myCalc.multiply(4, 7);출력:
Hello! I am a calculator.
8
4 x 7 = 28메서드는 다음과 같은 작업을 수행할 수 있습니다:
int add(int a, int b)와 같은 반환 타입을 가질 수 있습니다return을 사용하여 값을 반환할 수 있습니다print()를 사용하여 출력을 직접 표시할 수 있습니다- 아무것도 반환하지 않을 때
void가 될 수 있습니다
핵심 포인트: 점 연산자를 사용하여 객체의 메서드를 호출합니다: object.methodName(args).
챌린지
쉬움bank_account.dart 파일에 다음을 포함하는 BankAccount 클래스를 생성하세요:
0으로 설정된double balance인스턴스 변수double amount를 매개변수로 받아balance에 더하는deposit메서드double amount를 매개변수로 받아balance에서 빼는withdraw메서드- 현재
balance를 반환하는getBalance메서드
그 다음 driver.dart에서 계좌를 생성하고, 100을 입금하고, 30을 출금한 후, 잔액을 'Current balance: $[balance]' 형식으로 출력하세요.
치트 시트
메서드는 클래스에 속하며 객체가 수행할 수 있는 동작을 정의하는 함수입니다.
반환 타입을 사용하여 메서드를 정의합니다. 메서드가 아무것도 반환하지 않을 때는 void를 사용합니다:
class Calculator {
void greet() {
print('Hello! I am a calculator.');
}
int add(int a, int b) {
return a + b;
}
int multiply(int x, int y) {
int result = x * y;
print('$x x $y = $result');
return result;
}
}점 연산자를 사용하여 객체의 메서드를 호출합니다:
Calculator myCalc = Calculator();
myCalc.greet(); // 매개변수 없음
int sumResult = myCalc.add(5, 3); // 매개변수 사용, 반환값 캡처
print(sumResult);
int product = myCalc.multiply(4, 7); // 출력 및 반환메서드는 반환 타입을 가질 수 있고, return을 사용하여 값을 반환하거나, print()를 사용하여 출력을 직접 표시할 수 있으며, 아무것도 반환하지 않을 때는 void가 될 수 있습니다.
직접 해보기
import 'bank_account.dart';
void main() {
BankAccount myAccount = BankAccount();
myAccount.balance = 0;
// TODO: 100 입금하기
// TODO: 30 출금하기
// TODO: 'Current balance: $[balance]' 형식으로 잔액 출력하기
// Hint: 깔끔한 출력을 위해 balance에 .toInt()를 사용하세요
}
이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.