מבוא למדעי המחשב

מסמכים קשורים
מבוא למדעי המחשב

מבוא למדעי המחשב

Slide 1

תרגול 1

מבוא לתכנות ב- JAVA תרגול 11

מבוא למדעי המחשב

תרגול 1

מבוא למדעי המחשב

אוניברסיטת בן גוריון בנגב תאריך המבחן: שם המרצה: מר אלכסנדר שקולניק, בשפת JAVA מבחן ב: מבוא לתכנות מס' הקורס : מיועד לתלמידי : הנד

אוניברסיטת בן גוריון בנגב תאריך המבחן: שקולניק אלכסנדר שם המרצה: מר בשפת JAVA מבוא לתכנות מבחן ב: מס' הקורס : הנדסת תעשיה וניהול מ

PowerPoint Presentation

PowerPoint Presentation

מבוא למדעי המחשב

Slide 1

תרגול 1

PowerPoint Presentation

תרגול 1

מבוא לתכנות ב- JAVA תרגול 7

PowerPoint Presentation

מהוא לתכנות ב- JAVA מעבדה 3

עוצמת ההורשה מה הופך את ההורשה לכלי כל כך עוצמתי? מעבר לכך שהוא מקל בהגדרת מחלקות חדשות על סמך מחלקות קיימות, יש לנו אפשרות להתייחס לאובייקט מסויים בכ

Slide 1

PowerPoint Presentation

מבחן 7002 פרטים כלליים מועד הבחינה: בכל זמן מספר השאלון: 1 משך הבחינה: 3 שעות חומר עזר בשימוש: הכל )ספרים ומחברות( המלצות: קרא המלצות לפני הבחינה ובדי

Slide 1

PowerPoint Presentation

תרגול 3 - מערכים

Microsoft PowerPoint - 10_threads.ppt

לנץ קרן מרצה: תכנותמונחהעצמים) ( יוםשישי 15 אוקטובר 0202 ב מועד 0202, אביב סמסטר סמסטר סוף מבחן גוטמן אייל רביב, אריאל משנה, אלון מתרגלים: הנחי

Microsoft PowerPoint - rec3.ppt

מבוא למדעי המחשב

Slide 1

תרגול מס' 4: המתרגם שימוש במחלקות קיימות מחרוזות, קבצים, וקבלת קלט מהמשתמש

תכנות מונחה עצמים א' – תש"ע

מבוא למדעי המחשב, סמסטר א', תשס"ח תרגול מס' 2

Microsoft Word - pitaron222Java_2007.doc

מס' סידורי: ת.ז.: עמוד 1 מתוך 20 בחינה בתוכנה 1 סמסטר ב', מועד א',תשס"ט 5/7/2009 וולף, ליאור ליאור שפירא, נעמה מאיר, מתי שמרת הוראות )נא לקרוא!( משך ה

יוםראשון, 02 ליולי 2014 סמסטר סוף מבחן )236703( עצמים מונחה תכנות - א' מועד 2014, אביב סמסטר קמחי יחיאל ד"ר מרצה: מסינג מיטל עבדאלקאדר, כרם גלעד, ערן

תוכנה 1 תרגול מספר 12: GUI כתיבת מחלקות גנריות בית הספר למדעי המחשב אוניברסיטת תל אביב 1

PowerPoint Presentation

Slide 1

Microsoft Word - דוגמאות ב

הגשה תוך שבוע בשעת התרגול

תרגול מס' 7: תרגילים מתקדמים ברקורסיה

מספר מחברת: עמוד 1 מתוך 11 ת"ז: תשע"א מועד ב סמסטר א' תאריך: 00:11 שעה: 0 שעות הבחינה: משך כל חומר עזר אסור בשימוש בחינה בקורס: מבוא למדעי ה

פתרון מוצע לבחינת מה"ט ב_שפת c מועד ב אביב תשע"ט, אפריל 2019 מחברת: גב' זהבה לביא, מכללת אורט רחובות שאלה מספר 1 מוגדרת מחרוזת המורכבת מהספרות 0 עד 9.

1

PowerPoint Presentation

PowerPoint Presentation

PowerPoint Presentation

אוניברסיטת חיפה החוג למדעי המחשב מבוא למדעי המחשב מועד א' סמסטר ב', תשע"ג, משך המבחן: שעתיים וחצי חומר עזר: אסור הנחיות: וודאו כי יש בידיכם

1 תוכנה 1 תרגיל מספר 7 מנשקים Interfaces הנחיות כלליות: קראו בעיון את קובץ נהלי הגשת התרגילים אשר נמצא באתר הקורס. הגשת התרגיל תעשה במערכת ה- moodle ב

תורת הקומפילציה

Slide 1

Slide 1

שקופית 1

מבחן סוף סמסטר מועד א 15/02/08 מרצה אחראית: דר שירלי הלוי גינסברג מתרגלים: גלעד קותיאל, דניאל גנקין הוראות: א. בטופס המבחן 7 עמודים ו 4 דפי נוסחאות. ב

שאלהIgal : מערכים דו מימדיים רקורסיה:

Microsoft PowerPoint - rec1.ppt

מבוא למדעי המחשב - חובלים

PowerPoint Presentation

סדנת תכנות ב C/C++

Microsoft PowerPoint - 06_inheritance_noBackgroung.ppt

שאלהIgal : מערכים דו מימדיים רקורסיה:

יוםשישי 14 בספטמבר 2012 ) תכנות מונחה עצמים ( מבחן סוף סמסטר סמסטר אביב 2012, מועד ב' מרצה: קרן לנץ מתרגלים: אייל מושקוביץ, ערן גלעד, ניר האוזר

עבודת בית מספר 5: מבני נתונים מבוא למדעי המחשב, סמסטר א' תשע"ט מבוא למדעי המחשב סמסטר א' תשע"ט צוות העבודה: מרצה אחראי: יוחאי טוויטו מתרגלים אחראים: א

שאלה אחת

1

מקביליות

מבוא למדעי המחשב - חובלים

Slide 1

מתכונת עיצוב 3013

מצגת של PowerPoint

Microsoft PowerPoint - lec10.ppt

Microsoft Word a_moed_a_solution.doc

Microsoft Word - c_SimA_MoedB2005.doc

מספר זהות: סמסטר ב' מועד א' תאריך: 11102/4// שעה: 9:22 משך הבחינה: 3 שעות חומר עזר: אין מותר השימוש במחשבון פשוט בחינה בקורס: מבני נתונים מרצה: הדר בי

Microsoft Word B

Microsoft PowerPoint - lec 04 Gui Form_Item.pptx

תוכנה 1 בשפת Java שיעור מספר 3: "חתיכת טיפוס"

שאלהIgal : מערכים דו מימדיים רקורסיה:

Slide 1

תוכן העניינים

HTML - Hipper Text Makeup Language

Slide 1

אוניברסיטת חיפה החוג למדעי המחשב מרצה: שולי וינטנר מתרגלים: נעמה טוויטו, מחמוד שריף מבוא למדעי המחשב סמסטר א' תשע"ב בחינת סיום, מועד א', הנחי

פתרון 2000 א. טבלת מעקב אחר ביצוע האלגוריתם הנתון עבור הערכים : פלט num = 37, sif = 7 r האם ספרת האחדות של sif שווה ל- num num 37 sif 7 שורה (1)-(2) (

Microsoft Word - c_SimA_MoedA2006.doc

מקביליות

Slide 1

Microsoft PowerPoint - lec2.ppt

PowerPoint Presentation

Slide 1

Tutorial 11

תמליל:

מבוא למדעי המחשב המחלקה Object

תוכן עניינים Object הורשה והמחלקה

ערך שם טיפוס DynamicIntArray da data size incrementsize DynamicArray תזכורת - Object[] data; int size; int incrementsize; DynamicArray זה מה שאמרנו על Object מחלקה ב- Java במשתנה מסוג Object ניתן לתלות כל אובייקט ב- Java כדי לפעול על אובייקט שתלינו על משתנה מסוג Object יש "להגיד" לקומפיילר מה תלינו באמצעות המרה בואו נשלים את התמונה... שדות בנאים DynamicIntArray(int initialcapacity) DynamicIntArray() שיטות int size() boolean isempty() void add(object element) void add(int index, Object element) Object get(int index) Object set(int index, Object element) Object remove(int index) String tostring() boolean equals(object x)

אובייקטים מסוג Object אפשר ליצור אובייקטים מסוג Object (אם כי בדר"כ אין הרבה מה לעשות איתם) public static void main(string[] args) { Object object1 = new Object(); Object object2 = new Object(); System.out.println(object1 == object2); // false Object object3 = object2; System.out.println(object2 == object3); // true

המחלקה Object public String tostring() במחלקה מוגדרות מספר שיטות (קטן), ששתיים מהן מעניינות אותנו: public boolean equals(object x)

Object השיטות tostring ב- ו- equals public boolean equals(object other) { return this == other; public String tostring() { return <type>@<address>; public static void main(string[] args) { Object object1 = new Object(); Object object2 = new Object(); System.out.println(object1.equals(object2)); // false System.out.println(object1.toString()); // java.lang.object@2a139a55 System.out.println(object1); // java.lang.object@2a139a55

המחלקה Object,Object כל מחלקה ב- Java "מרחיבה" ("יורשת") את המחלקה ולכן: equals ו- tostring מוגדרות השיטות Java בכל מחלקה ב-

המחלקה DynamicArray (הרחבה של (Object? Object() String tostring() boolean equals(object other) Object[] data; int size; int incrementsize; DynamicArray DynamicIntArray(int initialcapacity) DynamicIntArray() int size() boolean isempty() void add(object element) void add(int index, Object element) Object get(int index) Object set(int index, Object element) Object remove(int index) שדות של המחלקה Object בנאי של המחלקה Object שיטות של המחלקה Object שדות שנוספו במחלקה DynamicArray בנאים של המחלקה DynamicArray שיטות שנוספו במחלקה DynamicArray

השדות של אובייקט מסוג DynamicArray השדות של Object השדות שנוספו ערך שם טיפוס? DynamicIntArray da data size incrementsize

המחלקה Object ומה אם tostring ו- equals לא מתאימים? "נדרוס" (overriding) אותן (נגדיר אותן מחדש) כפי שהכן עשינו במחלקה DynamicArray

? Object() String tostring() boolean equals(object other) Object[] data; int size; int incrementsize; DynamicArray DynamicIntArray(int initialcapacity) DynamicIntArray() int size() boolean isempty() void add(object element) void add(int index, Object element) Object get(int index) Object set(int index, Object element) Object remove(int index) String tostring() boolean equals(object other) דריסה התאמת השיטות לצרכינו שדות של המחלקה Object בנאי של המחלקה Object שיטות של המחלקה Object שדות שנוספו במחלקה DynamicArray בנאים של המחלקה DynamicArray שיטות שנוספו במחלקה DynamicArray שיטות ששונו במחלקה DynamicArray

DynamicArray דריסה של tostring במחלקה // returns a String representing this object public String tostring() { String result = "{"; for (int i = 0; i < size; i = i + 1) { Object x = data[i]; if (x == null) result += "(null)"; else result += "(" + x.tostring() + ")"; result += ""; return result;

DynamicArray דריסה של equals במחלקה // Compares the array for equality // assume no data is null public boolean equals(object x) { if (!(x instanceof DynamicArray)) return false; DynamicArray other = (DynamicArray) x; boolean isequals = this.size == other.size; for (int i = 0; i < size && isequals; i = i + 1) if (!this.data[i].equals(other.data[i])) isequals = false; return isequals; < vvvvvvvvvvvvvvvv > iiiiiiiiiiiiiiiiiiii < tttttttt > האופרטור :instanceof String s = new String("hello"); Integer i = new Integer(3); Object o = i; System.out.println(s instanceof String); // true System.out.println(s instanceof Object); // true s = null; System.out.println(s instanceof String); // false System.out.println(o instanceof Integer);// true System.out.println(o instanceof String); // false System.out.println(s instanceof Object); // false

כלל הבצל איזה שיטה תופעל?,DyanamicArray אחרת אם דרסנו את tostring שב- Object ב- DynamicArray תופעל הדורסת זו שב- זו בכל מקרה tostring מוגדרת עבור DynamicArray

המחלקה Object למה במשתנה מסוג Object ניתן לתלות כל אובייקט ב-?Java כי כל אובייקט ב- Java הוא מסוג Object (מכיל כל מה שיש ב- (Object אבל, אם תלינו אובייקט במשתנה מסוג Object ואנחנו רוצים לפעול עליו באמצעות שיטה שאינה מופיע ב- Object (לענייננו לא tostring ולא (equals אנחנו חייבים "להגיד" לקומפיילר באמצעות המרה מה סוג האובייקט שתלינו במשתנה

ה reference type vs instance type ה - type שהקומפיילר מייחס לאובייקט reference type - type האמיתי של האובייקט (המחלקה ממנה האובייקט נוצר) instance type instance type reference type String s1 = new String("hello"); Object o1 = new String("world"); char c1 = o1.charat(2); // comp. error char c2 = ((String) o1).charat(2); // c2 == r System.out.println(o1.toString()); // world

תוכן עניינים הורשה והמחלקה Object המחלקה DynamicIntArray

- המסגרת המחלקה DynamicIntArray public class DynamicIntArray extends DynamicArray {

המחלקה DynamicIntArray public DynamicIntArray() { super(); public void add(object element) { if (!(element instanceof Integer)) throw new IllegalArgumentException(); super.add(element); public void add(int index, Object element) { if (!(element instanceof Integer)) throw new IllegalArgumentException(); super.add(index, element); public Object set(int index, Object element) { if (!(element instanceof Integer)) throw new IllegalArgumentException(); return super.set(index, element); public int sum() { int sum = 0; for (int i = 0; i < size(); i = i + 1) sum += (int) get(i); return sum;

תוכן עניינים הורשה והמחלקה Object המחלקה DynamucIntArray קצת על super

super משמש להפניה לשדות, בנאים או שיטות של מחלקת האב הפניה לשדות או שיטות super.<method-name>( ) super.<filed-name> הכרחי רק במקרה של "הסתרה" הפניה לבנאי של מחלקת האב מתוך בנאי של מחלקת הבן (תמיד מהשורה הראשונה) super( )