Presentation is loading. Please wait.

Presentation is loading. Please wait.

תכנות מונחה עצמים.

Similar presentations


Presentation on theme: "תכנות מונחה עצמים."— Presentation transcript:

1 תכנות מונחה עצמים

2 העצם תכונות וערכיהן בעלים יוסי לב פעולות הטיפוס תכונות בעלים פעולות
דוגמה לעצם מטיפוס מחשב דוגמה לטיפוס מחשב העצם המחשב של יוסי תכונות וערכיהן בעלים יוסי לב מערכת הפעלה xp זיכרון Mb האם דולק לא דיסק קשיח 160G מיקום חדר עבודה פעולות הדלק כבה הגדל זיכרון ( _כמה) הטיפוס מחשב תכונות בעלים מערכת הפעלה זיכרון האם דולק דיסק קשיח מיקום פעולות הדלק כבה הגדל זיכרון ( _כמה) עזרים דידקטיים

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

4 דיאגרמה לתיאור טיפוס שם הטיפוס תכונות פלפל צבע: משקל: מספר - חתיכות:
צור - פלפל color, weight, pieces ) ) קבע - צבע newColor ) ) קבע - משקל newWeight ) ) קבע - מספר- חתיכות newPieces ) ) פעולה בונה פעולות קובעות אחזר - צבע ( ) אחזר - משקל ( ) אחזר - מספר- חתיכות ( ) מאחזרות חתוך - כל - חתיכה - ל- 2 ( ) חתוך - כל - חתיכה - ל ( n ) אחרות עזרים דידקטיים

5 דיאגרמה לתיאור עצם מטיפוס פלפל
העצם הפלפל שהארנב יוסי מחזיק מטיפוס פלפל תכונות וערכיהן צבע : ירוק משקל:100 גרם מספר חתיכות: 1 הפלפל בצלחת של יעל צבע : אדום משקל:120 גרם מספר חתיכות: 10 אין פעולות

6 אלגוריתם מילולי לביצוע פעולות
צור פלפל(1, 100, "ירוק") מטיפוס פלפל בשם הפלפל-של-הארנב-יוסי הפלפל-של-הארנב-יוסי . קבע-צבע ("אדום") הפלפל-של-הארנב-יוסי . חתוך-כל-חתיכה- ל-2 הפלפל-של-הארנב-יוסי . חתוך-כל-חתיכה- ל (5) הפלפל-של-הארנב-יוסי. אחזר-מספר-חתיכות( )  num1 צור פלפל(1, 120, "צהוב") מטיפוס פלפל בשם הפלפל-של-הדוד-משה הפלפל-של- הדוד-משה . קבע-צבע ("אדום") הפלפל-של הדוד-משה . חתוך-כל-חתיכה- ל (8) הפלפל-של- הדוד-משה . אחזר-מספר-חתיכות( )  num2 הדפס num1 + num2

7 תכונות הטיפוס private int weight; private int pieces;
import java.util.*; public class Pepper { private int weight; private int pieces; private String color; public Pepper(int weight, int pieces, String color) this.weight = weight; this.pieces = pieces; this.color = color; } public void setWeight(int newWeight) this.weight = newWeight; public void setPieces(int newPieces) this.pieces = newPieces; public void setColor(String newColor) this.color = newColor; public int getWeight() return this.weight; public int getPieces() return this.pieces; public String getColor() return this.color; public String toString() return " weight: "+ this.weight + " pieces: "+this.pieces + " color: "+this.color; public void cutIntoTwoPieces() this.pieces = pieces * 2; public void cutIntoNumPieces(int numberCuts) this.pieces = pieces * numberCuts; import java.util.*; public class Pepper { תכונות הטיפוס private int weight; private int pieces; private String color; public Pepper(int weight, int pieces, String color) פעולה בונה this.weight = weight; this.pieces = pieces; this.color = color; } פעולות מאחזרות public int getWeight() { return this.weight; } public int getPieces() return this.pieces; public String getColor() return this.color; פעולות חישוביות public void cutIntoTwoPieces() { this.pieces = pieces * 2; } public void cutIntoNumPieces(int numberCuts) this.pieces = pieces * numberCuts; פעולות קובעות public void setWeight(int newWeight) { this.weight = newWeight; } public void setPieces(int newPieces) this.pieces = newPieces; public void setColor(String newColor) this.color = newColor; פעולת הדפסה public String toString() { return " weight: "+ this.weight + " pieces: "+this.pieces + " color: "+this.color; }

8 import java.util.*; public class TestPepper { static Scanner reader = new Scanner(System.in); public static void main(String[] arg) בניית עצם בשם Pepper p1= new Pepper(46,5,"red"); p1 הדפסת הערכים של תכונות העצם p System.out.println(p1); פעולה המשנה וקובעת את מספר החתיכות של העצם p p1.setPieces(9); פעולה המאחזרת את הצבע של העצם p System.out.println(p1.getColor()); פעולה המחשבת מחדש את חתיכות העצם p p1.cutIntoNumPieces(7); הדפסת הערכים של תכונות העצם p System.out.println(p1); }


Download ppt "תכנות מונחה עצמים."

Similar presentations


Ads by Google