Menu
Coddy logo textTech

מתודות

חלק מהיחידה תכנות מונחה עצמים במסלול ה-Dart של Coddy. שיעור 6 מתוך 110.

מתודות הן פונקציות ששייכות למחלקה. הן מגדירות את ההתנהגויות או הפעולות שאובייקטים יכולים לבצע.

הנה דוגמה למחלקה עם מתודות:

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).

challenge icon

אתגר

קל

צרו מחלקה BankAccount בקובץ bank_account.dart עם:

  1. משתנה מופע מסוג double balance שמוגדר לערך 0
  2. מתודה deposit שמקבלת double amount ומוסיפה אותו ל־balance
  3. מתודה withdraw שמקבלת double amount ומחסרת אותו מ־balance
  4. מתודה getBalance שמחזירה את ה־balance הנוכחי

לאחר מכן, בקובץ driver.dart, צרו חשבון, הפקידו 100, משכו 30 והדפיסו את היתרה בתבנית: 'Current balance: $[balance]'

נסו בעצמכם

import 'bank_account.dart';

void main() {
  BankAccount myAccount = BankAccount();
  myAccount.balance = 0;

  // TODO: הפקד 100

  // TODO: משוך 30

  // TODO: הדפס את היתרה בפורמט: 'Current balance: $[balance]'
  // רמז: השתמש ב-.toInt() על היתרה כדי לקבל פלט נקי
}
quiz iconבחנו את עצמכם

השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.

כל השיעורים ביחידה תכנות מונחה עצמים

תרגלו בעצמכם: קומפיילר Dart אונליין