ףד קיר - cs.tau.ac.ilstoledo/courses/oopj/presentation_09_10_11.pdfףד םירבסה קיר....

131
דף הסברים ריק

Upload: trinhdieu

Post on 29-Aug-2019

216 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

ף ד

יםברהס

יק ר

Page 2: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

ק חל

כ 9ה לקמחה

יותש

מהעצ

ני בפ

Page 3: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

ף ד

יםברהס

יק ר

Page 4: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

םמיעצ

ת יריצ בוןסכחי

ג סו מיםצמ עזרמח לסהננ

Ver

sion

תר יויםוצנח

ם אינש

;

כתר יויךצר

א לשרא

יםסו מצם ע

,ל ש

ר אגלמ

תו או

ר חזינ

יםשיופ חיםצמע

קהחלהמ משחד

ם עצ

ך רי צשרכא

,ש ם יא

ר אגבמ

ם קיי

ם עצ

שמושי בינושא

,בו

ש תמשנ

,שחד

ם עצ

ר צו נירתאח

ה יאקרמ

עו מנה יכז

ם עצ

ם כירישצ

ת חוקושל

ש ור דבןמו כזה

איבנל

,שחד

ם עצ

ר צו ייידתמ

ה י זכ

class Version {

private static Version free_list;

private Version() {}

public static Version alloc() {…

} public Version free() {…

}

Page 5: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

ף ד

יםברהס

יק ר

Page 6: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

ם מיעצ

ת יריצ בוןסכחי

)שךמה

( class Version {

private static Version free_list;

private Version () {}

public static Version alloc() {…

} public void free() {…

}

String value;

Version previous;

}

• ותירשם ימיעצ

ת בנו ליםוליכ

א לותוחלק

ה ורצדרוהפ

alloc

יםצמ עותבנ ללהכון י כ

Page 7: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

ף ד

יםברהס

יק ר

Page 8: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

ורחרשה ואקצה

public static Version alloc() {

if (free_list == null)

return new Version();

else {

Version v = free_list;

free_list = v.previous;

return v; } }

public void Version free() {

this.value = null;

this.previous = free_list;

free_list = this; }

Page 9: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

ף ד

הסיםבר

יק ר

Page 10: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

קהחלמ

ת דוש

קהחלמ

תי רושי ו

ה שדה

free_list

קהחלהמ מיםצמהע

ל לכ

ף ותש מ

;ה שד

ה לקמח

ה שד כרזוכמ

)פעמו

ה שד מילבדלה

(ת יל מרתעזב

ח פתהמ

static

קהחלהמ

ל ש

ת רושיב

,ם שה

previous

ל ש

ה שד לורש ק

ת רושי האת

ל עיהפש

ם עצה

)פעמו

ה שד

( •

ם ש הבלא

free_list

הכל לתףשו מדהש לורש ק

ם מיעצ

ה לקמחמה

)קהחל מדהש

,cl

ass

field

( •

alloc

ה לקמח

ת רושי

או ה ורצדרו פיא ה

)cl

ass

met

hod

( ;די ל י עותירשת יעלופ מיאה

Version.alloc()

ל עלא ו

קהחלהמ

ל ש

ע ופ מואשה

ם עצ

;ת דוש לשהגי

ה לשי

קהחלהמ

,וחלק כקהחלבמ

ש תמשלה

ה וליכ

א היו

,ח קוכל

ל אב

ותירשת ודוש לגם

ה שגי

ה לשי

ם גנימו

ם י

)private

מהדווכ

(

Page 11: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

ף ד

יםברהס

יק ר

Page 12: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

קהחלמ

ת דוש

ה מל

?

• ם לייובגל

ת מוש

ם ווימה

ם הכי

)ד מישת

ת סויחתי המרלוכ

ואמצ לשראפ

,הו שאיז מבללק

ך רישצ

ם ליגי ריםצמ עמתעול

הםלי אותחסתיי החר אצםע

( •

ם דיחים י הכי

)ק דיו בשר יומכל

Version.free_list

ד אח

יתכנתוב

( •

מהק דיו בזה

ינורצש

:

ר אג מאת

א צולמ

ם ליוגמס

ת היול

יםנויהפ

ם מיעצה

,ם ג

ננואי

קהחלהמ מצם עאף

ם ריכי מ

,חד איםנוי פגרמא

ק ריהיהשו

Page 13: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

ף ד

יםברהס

יק ר

Page 14: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

וןכרזי

ת אקצ הבילג

ת רועה

'בגיתמטטואו

ל והמנ

ון כרהזי

ה אוו

;ת סויחתי השד יעו

ל כ

צםלע

,רתאח

ה טרלמ

ה קצ יולא

לו ש

ון כרהזי

,ין אאםו

צםלע

ת סויחתיה

,ת רכמע לזרוחו ישל

ון כרהזי

)ידמי

א לליאו

( •

אתת זרולמ

,ת קוחל מירגדלה

ר שאפש

ה רא ממהוגהד

שורמפ

ון כר זיוליהת נשוממשמ

,ת ניווכ תוריצ לשראפ

ם גכןול

רוןיכהז

ל הובני

ם מיפג

ם ע

,טיומוט אוליהא נלל

ת פוש במוכ

Version v1 = Version.alloc();

we

use

the

obje

ct th

at v

1 re

fers

to

v1.free();

Version v2 = Version.alloc();

v1.value = "something";

an e

rror

! • מהוגבד

ר שמא

וי יללג

ה ש קתר יוגםהפ

ל כל

ך דרב

Page 15: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

ף ד

יםברהס

יק ר

Page 16: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

ון כרזי

ת אקצה

)םריחא

ם ביאשמו

(

• ון כר זיפתליד

)m

emor

y le

ak (

ון כר זיוליהבנ

ר אח

ם פג

א הו

שורמפ

:לא

ל אב

ה קצמו

ם עצ

ותשורמפ

ר חרשו מ

) ת יפדל

ם הא

לנוש

ה גמדו בגם פיא הרוןיכז

?( java.io.FileInputStream

is

= new FileInputStream("C:\grades.dat");

we

the

inpu

t str

eam

is.close();

we

rele

ase

the

obje

ct; s

hou

ldn

't u

se it

late

r • ל גבמו

ר ספ מרק

ח תולפ

ם מיפע לרתשאפ מלהפעהה

ת רכמע קשל

יםבצ

,בלוג מאבש מוא הוחפת

ץ וב קכןול

;ר חרש לובשח

תואו

ם כירי צלאש

ע רג באבשהמ

ת א

יתכנתו בגם פוא המןבז

ר רושח

אי ,

ר חרשוש

ץ ובבק

ש מושיו

גם פוא הגם

Page 17: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

ף ד

יםברהס

יק ר

Page 18: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

קהחלמ

ת דוש לםשימושי

ד עו

ון יכ תותבני תוד עשי

)de

sign

pat

tern

s (

ם שיתמששמ

קהחל מותשדב

יחבט מידיח היתבנת

ת ימסו מקהחלממ

ד אח

ם עצ

ק רששי

ה )

sing

leto

n pa

tter

n(

• ה וצל נשק מיתבנת

)fly

wei

ght

patt

ern

(ל ש

ר אג מרתוצי

ם עצ

ר ותהי

ל לכ

ה הין יתוע נרג

ל בכש

ת אגדום ועיובמק

ם מיעצ

תוןט נשופ מצב מעם

ד אח

;ע בצ לשראפומ

ון כר זיסךחו

ה ז

ם עותואשוה

==

ם קובמ

equals

ת רושיה

java.lang.String.intern()

ת בני תזקתח מ

: כזו לותחסתיי הירחז מואה

זתרומח

ל ש

ני קנו

ק ותע

Page 19: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

ף ד

יםברהס

יק ר

Page 20: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

םעיבוק

יתכנתו ביםועקב

ון צי לגם

ם שישמ מקהחל מותשד

יתנונסג

ה כמוסמ

:ת תיואו

ק ריםללכוש

ת מוש

ל כל

ך דרב

ותולגד

class Paragraph {

public f

inal s

tatic

int DIR_LTR =0x01;

public f

inal s

tatic

int DIR_RTL =0x02;

public f

inal s

tatic int ALIGN_LEFT =0x04;

public f

inal s

tatic int ALIGN_RIGHT=0x08;

public Paragraph (int style) {…

} …

}

Page 21: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

ף ד

יםברהס

יק ר

Page 22: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

בשמושי

םעיבוק

class Paragraph {

public final static in

t DIR_LTR =0x01;

public Paragraph (int style) {…

} …

}

Paragraph p = new Paragraph(

Paragraph.DIR_RTL | Paragraph.ALIGN_RIGHT

);

Page 23: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

ף ד

יםברהס

יק ר

Page 24: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

ל ש

ר מתשמה

קהחלמ התדוש

• )

ה שגי מיםגנמו

ה לקמח הותשדש

ה ירסב החההנ האת

ח נני

מנםאי

כן ול

ה לקמח השל

ת חוקו לדיל י ערהשיי

זהחו ביםיעופ

( •

קהחלהמ

ת דוש בשתמש ממי

? •

פעמו

תי רושיה ולקמח

תי רושי

איצמ עצם עעין מיםהוו מקהחלהמ

ת דוש

;ם הלוש

ם תירושיה

קהחלהמ

תי רושי

;ת סויחתי השה ילקמחמה

ם עצ

ל לכ

ל אב

ליו אשתלג

ע ופהמ

תי רושי לתרמוו וליא

כןל

,הםשל ממרשת מיהיה

ה לקמח הותשדל

רושי

ם וג

ה לקמח התירושי

ם ג

תואו

ד כב ליםיבחי

ע ופהמ

תי ,

כי לשהגי

ש ם יוללכ

שקהחלהמ

ת דו

Page 25: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

ף ד

יםברהס

יק ר

Page 26: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

קהחלמ התדוש

ל חותא

ל חואתט ושו פקהחלהמ

ת דוש

ל ש

ר תמשהמ

ם מיפעל

מוקיו

ת איחבט מהםשל

ני יד האו

טי ומוטהא

,

class Version {

private static Version free_list;

nu

ll is

ok

class Paragraph {

public final static in

t DIR_LTR =0x01;

יקספ מלא

ה ם זמיפע לבלא

;די מבךסו ממרשתהמ

ם מיפעל

, הם בפללט

ך רישצ

ם גירי חעל

ע דיהו לולעל

ל חואת היםעמלפו

Page 27: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

ף ד

יםברהס

יק ר

Page 28: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

טיאטס

ל חותא

class

Sentence {

private static Set prepositions;

static {

prepositions = new HashSet();

try {

FileReader r

= new FileReader("preps.txt");

re

ad th

e fi

le a

nd

fill

the

set

} catch (IOException e) {…

} }

Page 29: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

ף ד

יםברהס

יק ר

Page 30: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

ולחתא הקיחו

קהחלהממ

ת רושי

ת עלהפ

ני לפ

ע בצית

טי טאהס

ל חואתה

,יםנא בללכוה ולקמח

תי רושי

ל ולכ

ם טייטא סולתח אשיגו

ה כמ

ש ם יא

)ל חואת

קי סו פגם

לי אוו

יםוטשפ

(תםפעהו

ר סד

פי לעובצית

ם ה

;יתנונסג

,כז לר

ף דיע

חד אשגו ליםטיטאהס

ם ליחואת הכל

ת א

ל חואת

ש ה ישל

ס סיהב

ת לקמח לגםש

ה יברחמ

ה לקמחב

טיטאס

,ל ש

ל חואת הפני לצעתבס יסיהב

ל ש

ל חואתה היברחהמ

ילפע מטיטאהס

ל חואת האם

ותחר אותלקמח

ל ש

ם תירושי

,

דםקו

לו תחאון יה

טי טאהס

ל חואת המןת ז אמהעצ ברתוח בצהרי המןת זיבסב

לוהל

ם צילואי בשבתחבה

Page 31: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

ף ד

יםברהס

יק ר

Page 32: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

sin

gle

ton

בךסומ

טי אטס

ל חותא

ם קומ ב

ד חיהי

ת בניבת

ש תמשלה

לי או

ף דיע

)si

ngle

ton

(ם קובמ

יםובמר

ה לקמח

ת דושב

;עצ

ל ש

ב מצ לפךנה

ה לקמח הצבמ

ם ילרג

,קהחלבמ

ם מיעצ הכל לתףשושמ

class MyClassStatic {

instance fields

public MyClassStatic () {…

} …

instance methods

} class MyClass {

private final static MyClassStatic mcs

= new MyClassStatic();

Page 33: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

ף ד

יםברהס

יק ר

Page 34: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

ת פוקתשה

)re

flec

tio

n(

'בגוהאו

,ד קו השל

ה בנהמ

)ותלקמח

,יםותירש

,ותשדו

(ין זמ

ודהק

ה בנ מאת

ר קולח

ר שאפומ

ה יצ רמןבז

ותלקמח

ם גייצמי

ה של

ם מיעצשה

ה לקמח

ש י

,ה לקמח

ותילחב

ת צגמייש

,יםותירש לקהחלמ

,ותשד לקהחלמ

,יםנאלב

ה לקמחו

יםצגמיי היםצמהע

ת זרבע

ם תירושים ואיבנ

ל עיהפ לתןני

java.lang.Class

java.lang.Package

java.lang.reflect.Constructor

java.lang.reflect.Method

java.lang.reflect.Field

Page 35: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

ף ד

יםברהס

יק ר

Page 36: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

קהחלמה

VersionedString vs = …

Class x = vs.getClass();

an O

bjec

t met

hod

Class y = VersionedString.class;

lite

ral

Class z = Class.forName("VersionedString");

st

atic

look

up •

ם טיפר הכל

ת אירחזלה

ל כוה ילקמח האת

ג יצמיש

ם עצה

יהגבל

:מהש

ת א

,שתממומ

ה יברחמ

א הי

מי ת א

,ת דוש האת

להש

,להש

ם איבנוה

ם תירושי האת

שללמ

,ת נייב

דלמח הרתרי באיבנ בשמושי

ך תו

ם עצ

: VersionedString a

= (VersionedString) z.newInstance();

Page 37: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

ף ד

הסיםבר

יק ר

Page 38: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

מיאינ דפןאו בתקוחלמ

ת ייבנ

ה לקמחה

java.lang.reflect.Proxy

ת בנו לרתשאפ מ

מינאדי

פן או בותלקמח

;ה וטש פתר יורך דשל יכל

ך דר בבלארהמט

ה ות אאת

ג שילה

class VSHandler implements

InvocationHandler {

public Object invoke(Object proxy,

Method m,

Object[] args) {

if (m.getName().equals("add")) {…

}

else if (m.getName().equals("length"))

Page 39: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

ף ד

יםברהס

יק ר

Page 40: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

לובט

ה ה זמ

? •

ם מיקיימת

ר שכא

ת שימושי

ה אל כיםצמ עשל

ת מינאדי

ה נייב

יםנא תשני

יתשרא

,מי נאדי הצםהע

ר שכא

ג ציא נהו

)pr

oxy

(ם עצ

ל שמתויימס

ת וליכ

לו ף סיהו ליםשבק מאנוש

ל גיר

השל

אי בנ לירעבל נגיהר

ם עצ האת

-InvocationHandler

ת רושיוה

invoke

ם עצ העל

ש וקמב הותירש האת

ל עייפ

ילרגה

יתשנ

,ה ועיד

א לילרג הצםהע

ל ש

ם תירושי הצתבו קשרכאשראמ

, הלאא

-InvocationHandler

בתהאו

ה גל מ

מן ז

ותקפשתבה

ש מושי

ך תו

ה יצר

שראפ מזה

,שללמ

,ל מו

ת אושהר

ת יקבד

ל ש

ה כבש

ף סיהול

ותלקמח

ל ש

תי רוריש

ף וס אורעב

ץ ובבק

ת רוגדה

Page 41: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

ף ד

יםברהס

יק ר

Page 42: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

תפוקתשוה

ה קחלמ

ת דוש

ם כוסי

קהחלבמ

ם מיעצ הכל ליםתפשו מקהחל מותשד

יםידיח

ם וה

ם עידום ילייובגל

ת מוש

ש ה ילקמח הותשדל

ה לקמח הותשדל

הםשל ממרשת משי

;ל ש

ם תירושי הכל

ל ע

קהחלהמ

,קהחל מתירושיע וופ מתירושי

,מרשתהמ

ת אבדלכ

יםותירשת ודוש

ל ש

ת רוגד הסףאו

ק רלא

א הי

ה לקמחה

,א ול

קהחלהמ

ת דוש

ל ש

ם ונינת הנהמב

ק ר

צהרי

מן בז

שי וח מצם עגם

א הי

ה לקמחה

,ר קולח

תן שני

ם עצותשד האת

ם גייצמיש

ם מיעצ

נו ממ

ל קבול

תו או

יםותירשוה

• כזו

ה ורבצ

ם תירושים ואיבנ

ל עיהפ לשראפ

ת זרבע

מי נאדי

פן או ביםצמ עוריצ לשראפ

java.lang.reflect.Proxy

Page 43: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

ף ד

יםברהס

יק ר

Page 44: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

ק חל

10 (םיוש

Nam

ing

(

Page 45: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

ף ד

יםברהס

יק ר

Page 46: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

גתניוכת בתמוש החבמר

'והאו

גיתכנתו בותשמ החבמר

'והאו

,כה

ד עתואו

נו צגשה

פי כ

,א הו

תיכבשדו־

ב רחמ

, לםש

ט מעכ

,ת אונר

קי חו

ם ע

)vi

sibi

lity

( ־דו

יםדייממ

ותלמש

:שם

ש ר ידב

ל לכ

;ם עצ

ת רושי לירעבלה

תן שני

נו איר

מיוניאנ

ך ער מאו

,שם

ה כעד

ה הי

ס פוטי

ל לכ

ל אב

vi.add( new Integer (3) );

printPrimes( new int[] { 1, 2, 3, 5, 7 } ); •

ותתיכבשדו־

:ותילחב

ל ש

ף וסא

,ש ת יאח

ל בכש

ותלקמח

;ם ש

קהחלהמ

ם שה וילחב השם מכבור מוסיפט

;ת לוביהח

ף וסא

ח טוש

)כיררהי

ה ראא נהוש

ת רולמ

(ה ילחב בותלקמח הסףאוו

וחשט

ותדיימ־מדו

:טתחלמו

ת אונר

ב, להביח

,לאו

יםשורי

Page 47: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

ף ד

יםברהס

יק ר

Page 48: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

כבורמ

ר תיו

ת מוש החבמר

ם עצב

ותכבש

תי ש מתר יולו

ש י

:ך תו בותלקמח

ר דיהג לשראפ

ותלקמח

,יםותירש

ך תו בותלקמח

לו פיוא

ותמיוניאנ

ת קוחל מוריצ לגם

ר שאפו

לוהל

ם וניגנמנ האת

ה ראס נורהק

ל ש

ה הז

ק חלב

ותראהנ

קי חו

ת אקתויימד

ה ורבצ

ר דינג

ם וג

Page 49: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

ף ד

יםברהס

יק ר

Page 50: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

תיומניפ

ת קוחלמ

תיוטאטס

• יתימפנ

ה לקמח

ל ש

ר ותבי

ט שוהפ

ג סוה

public class PersistentVersionedString

implements VersionedString {

public static class PVSFilter

implements

java.io.FileFilter

{ public boolean

accept(java.io.File f) {

return f.getName().endsWith(".pvs");

}

}

}

Page 51: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

ף ד

יםברהס

יק ר

Page 52: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

תטיאטס

ת מיניפ

ה קחלמ בשמושי

• הי

זו כקהחלמ

בר דכל ללהגי רקהחל מא

,ה שמש

ה לז

ט פריתצונחי הקהחלהמ

ם ש

ת אללכו

א מלה

FileFilter filter = new

PersistentVersionedString.PVSFilter();

File dir = new File("/Projects/oopj");

File[] files = dir.listFiles( filter );

טיןלולח

ם אייצמ עהם

ת מיפני הקהחלהממ

ם מיעצ

;ם שו

ין א

יתצונחי הקהחלהממ

ם מיעצ

ין וב

ם בינ

ר שק

ל גל בבלא

יתצונחי השל

ה שד

ין מע

א הי

ת מיפנישה

,ם תירושי הןתיש

ל ש

ה לקמח הותשד

ל לכ

ת שלג

ם ליכון ייהשת

ל ש

,ם ג

ם גנימו

ת דושל

)private

- וprotected

(

Page 53: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

ף ד

יםברהס

יק ר

Page 54: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

תיוטאטס

ת יומניפ

ת קוחלמ

ל ע

ה גנה

בוצי

ה אינ

ת מיפני הקהחלהמ

ם א

ת רי

)ת דרוג מנהאי

public

( ,תרוס מלהש

ס פוטיה

,ם ריסתמו

ם אינ

ה לקמחמה

ם מיעצ

ל אב םיהאל

ת סויחתי השם יא

public class PersVS …

{

private

static class PVSFilter ... {…

} public static FileFilter getFilter()

{ return new PVSFilter(); }

FileFilter f = new PersVS.PVSFilter();

erro

r FileFilter f = PersVS.getFilter();

ok

Page 55: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

ף ד

יםברהס

יק ר

Page 56: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

תמיניפ

ה קחלמ לשמושי

ד עו

Version

ל ש

ש מומי בזר עקתחל מוא ה

LinkedVersionedString

,תהאו

ר תיהס ליףעד

public class LinkedVersionedString

extends VersionedString {

private

class Version {

}

}

Page 57: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

ף ד

יםברהס

יק ר

Page 58: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

תיוטאטס

א לתיומניפ

ת קוחלמ

בגר ותמי

ה בנמ

'והאו

;יםתימי איםשמושי

ד או מעטמ

אתל זבכו

,זה

ה מ

? •

ם מה

ד אח

ל שכ

ם מיעצ

ל ש

ה לקמח

"יךשי

"ל ש

ם עצל

לוש

ע ופהמ

ת דוש

ת אירמכה וילמכ הקהחלהמ

public class Outer {

private int o;

public class Inner {

private int i;

public void set() { i = o; }

public int get() { return i; }

}

Page 59: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

ף ד

יםברהס

יק ר

Page 60: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

תמיניפ

ה קחלמ

ל ש

ה ירשק

public class Outer {

private int o;

public class Inner {…

}

public Inner getInner()

{

return new Inner(); }

public void increment() { o++; }

} Outer x = new Outer();

Outer.Inner y1 = x.getInner();

Outer.Inner y2 = x.getInner();

Page 61: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

ף ד

יםברהס

יק ר

Page 62: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

ת מיניפ

ה קחלמ

ל ש

ה ירשק

)שךמה

(

Outer x = new Outer();

Outer.Inner y1 = x.getInner();

Outer.Inner y2 = x.getInner();

x.increment(); n

ow x

.o =

= 1

y1.set(); y

1.i =

x.o

==

1 x.increment(); n

ow x

.o =

= 2

y2.set(); y

2.i =

x.o

==

2 y1.get(); r

etu

rns

1 y2.get(); r

etu

rns

2

Page 63: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

ף ד

יםברהס

יק ר

Page 64: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

תטיאטס

ת מיניפ

ה קחלמ

ם ע

ה אוצת

ה תאו

public class Outer {

public static class SInner {

private int i;

private

Outer

outer;

an e

xpli

cit r

efer

ence

public SInner(Outer outer) {

this.outer = outer; }

public void set() { i = outer.o; }

public SInner getInner()

{

return new SInner(this); }

Page 65: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

ף ד

יםברהס

יק ר

Page 66: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

ר ביחת

)בךסומ

(חמ בשמושיל

'תיומניפ

מיפני

ם עצ

ל ש

ה ירשה ינייב

Outer x = new Outer();

Outer.Inner y3 = x.new Outer.Inner();

• להגי רקהחל מדיל י עיתימפנ

ה לקמח

ל ש

ה חבהר

class SubInner extends Outer.Inner {

public SubInner (Outer outer) {

outer.super(); } i

nvo

ke th

e su

per'

s c

onst

ruct

or •

יתימפנ הדיל י עיתצונחי הקהחלהמ

ל ש

ר סתמו

ה שד בשמושי

,בהחימר

ת ונייצהחש

ה לקמח השל

ר סתמו

ה שדוב

Outer.this.field

Outer.super.field

Page 67: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

ף ד

יםברהס

יק ר

Page 68: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

ת מיקומ

ה קחלמ

)שימושי

א ל

(

public VersionedString someMethod() {

final int fi = 3;

int mi = 4;

class LocalVS implements VersionedString {

public void add(String s) {

int x = fi; ok

int y = mi; c

ompi

lati

on e

rror

; mi i

s n

ot fi

nal

}

}

return new LocalVS();

}

Page 69: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

ף ד

יםברהס

יק ר

Page 70: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

תמיקומ

ה קחלמ

ת נוכות

יתימפנ

ה לקמח

זו

• יתאטסט

א ל

;ח פתהמ

ת ילבמ

ש תמשלה

ר סוא

static

ש גו לוץמח

ר וכ מלא

ס פוטיה

)ותירש

(רתגדמו

א הי

בו ש

,כן ול

ת אונר

ת דרהג ברךצו

ין א

)private

או

protected

( •

ש גו השל

ם תנישבמ

ש תמשלה

ה לתרמו

)ותירש

(א הי

בו ש

רתגדמו

;יתוממק

ה ירגדלה

ה יבהס

זו יתימפנ

ם סת

א ול

• רתגדמו

ה לקמח הבוש

ש גומה

ק מולח

ם ליכום יצמ עיםצמהע

,כןול

ם תנישלמ

ק רשתלג

ה לתרמו

רי אח

ה תנשא י לכםערש

שגו הלתעו פוםסי

) ם ריגדמוש

ם תנישמ

final

( ,חרא

תא הי

יה

עלה ית

יםימקי

א לברשכ

ם תנישלמ

ת שלג

ה ול

לאין

להכא

ת קוחלמ

יםשמושי

ה רב ה

Page 71: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

ף ד

יםברהס

יק ר

Page 72: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

קוחלמ

תיומנינוא

ת )

תיושמושי

ד אומ

(

• ת קוחל משל

ה דרהג לבהסי הצםבע

הן ת מיווניאנ

ת קוחלמ

ותמיקוומ

ת מיופני

ר שמהי לדתועמיש

ה ורצדרו פשל

ה ריזלא

ל כל

ך דר בותששממ

ידעת בלהפעלה

ם ונינת

ה בנבמ

Button b = new Button(…

);

b.addMouseListener( new MouseListener() {

public void mouseClicked(Event e) {…

} });

• ם ציוח לשרכא

ל עיהפ לוראמ

א הוש

ה ורצדרו פורפתלכ

נו ברהע

ורפתהכ

ל ע

;צויהר

אי לוו הצאתו לוםגר תהזו

ה ורצדרוהפ

;די כ

אילוו הצאתו לוםגרל

,ם מיעצ לותחסתיי הורשמ לכהרי ציאה םצב מאת

ה שנ תיאשה

;ת ראנק

זו כרהדווצפר

clos

ure

Page 73: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

ף ד

יםברהס

יק ר

Page 74: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

טש מושי

תמינינוא

ה קחלמ בסיפוי

interface MouseListener

{ public void mouseClicked(); }

class Button {

Set mouse_listners = new TreeSet();

public void addMouseListener(

MouseListener ml)

{ mouse_listeners.add(ml); }

} b.addMouseListener( new MouseListener() {

public void mous

eClicked(Event e) {…

});

Page 75: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

ף ד

יםברהס

יק ר

Page 76: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

םייינ בםכוסי

:תיומניפ

ת קוחלמ

ותמיוניאנ

ת קוחל מוא התרביו

שי מושי הוגהס

,א הוש

ם שומבג

ת רודווצפר לותסוייחתי הדריע העל

ה פצמ

'והאו

כזוה ורצדרו פצםלע

ר ביהע לותשראפ מותמיוניאנ

ת קוחלמ

,ה ותהגתנשה

ה דרוג הבוש

ר שהק ביהלות

)ה וליכ

א הי

כי ת רושי השל

ם עיובמק

ם תנישבמם ועצ השל

ת דוש בשתמשלה

רתגדמו

א הי

בו ש

( •

ון יכהת

ת ניותב בותשימושי

ת מיווניאנ

ת קוחלמ

obse

rver

,st

rate

gy-ו,

com

man

d

• ותשראפ מותטיטא סותמיפני

ת קוחלמ

ב רח מאת

ב עצ לזר עותלקמח

ר תיהסול

ש מי גפןאו בותשמה

שה

ר א

)ותמיקוומ

ת טיוטא סלא

ת מיופני

(ותשימושי

ת חופ

יתימפנוה

ת ונייצהח

ה לקמח הבין

ת לוהת

ת אילגבלה

ף דיע

Page 77: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

ף ד

יםברהס

יק ר

Page 78: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

תמוש

ל ע

ה גנה

ותשמ

ל ענההג

ת מו רבעאר

:public

,protected

,private

-ו, pa

ckag

e)

תחמפ

ת יל מליב

( •

יםגנמו

ת מוש הרק

;לא

ם צמ עיםצמהע

נהמב לחסבי

א הי

ה גנהה

ודהק

ל ש

טי טאהס

,

ה בנלמ

ס יח בלא

רוןיכבז

ם מיעצ

ל ש

מי נאדיה

: קרתשו

ם הא

ת גלסו מנהתוד נו

סו משם לחסתיילה

ים•

גןמו

ה מ

?ת קוחלמ

)ותמיפני

ל ולכ

(ותשד

,

יםותירש

גןמו

א למה

?יםותירש

ך תו בותלקמחם ותנישמ

/יםוקפס

שי גו

,ם מייוניאנ

ם סיפוטי

)ין א

ליו עגןלה

ר שאפש

ם ש

(

Page 79: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

ף ד

יםברהס

רי

ק

Page 80: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

נההג

ת מור

public

:ותבלהג

ין א

private

:קהחל מתהאו בוד קדיל י ערק

ש מושי

,ל כללכו ת שירא

ה לקמח

ה ותבא

ת רוגדמוש

ת מיופני

ת קוחלהמ

)ל ולכ

ותחר אותמיפני

ת קוחלמ

( •

protected

:מו כ

private

מבל א

ירת

ת קוחללמ

ה שגי

ותיברחמ

להבי חנתהג

:מו כ

private

ת רושי

ל לכ

ה שגי

ר תי מבל א

באלהבי חתהו

די ל י עלהבי חנתהג

ל ש

ם חוהת

ת אילגבלה

ר שאפ

"רתגיס

"ותלקמח

ה ליףוסלה

לו וכא י ליםחרשא

ך כלהביח

;ע בצמת

ה ז

ה ומחת כלהביהח

ון ימ סדיל יע

)se

aled

ב) הבץקו

-ja

r

Page 81: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

ף ד

יםברהס

יק ר

Page 82: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

ת לוביח

תלוביח

ת מושו

ותילחב בותכנשו

ת קוחלמ

יךשי

א הו

ה של

ה ילחב האת

ה זה מבץקו

ל כ

,ץ ובהק

ם קומיולהביהח

ם ש

ל ש

ה כיררהי ליםתאלה

ך ריצ

package il.ac.tau.oopj;

• יםכיררהי

ם אינר

ת לוביהח

ת מושש

ת רולמ

,ד קו

צי קבש

ת רולמו

ם רייבינ היםבצהקר וקוהמ

).ja

va- ו

.cla

ss (

ם גניורמא

ותילחב הותשמ

ת אקףששמ

כי ררהי

פן או ביםיכדרבמ

,חב

ין ביהרכיר האין

ת מוש

ל ענההג

ת חינמב

ותיל

ה ילחב בקהחללמ

ר ומכל

il.ac.tau.oopj.ex3

ה שגי

ין א

בלהבי חנתהג

ם עותשמל

-il.ac.tau.oopj

פךהי ללא ו

Page 83: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

ף ד

יםברהס

יק ר

Page 84: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

תמוש

א בווי

ם אימל

ת מוש

קהחלהמ

ם שה וילחב השם

ת אללכו

ה ילחב

ל ש

א מל השםה

,שללמ

,java.io.InputStream

ותעישמ מחד

ד קו לנהמק

ה אל כותשמ בשמושי

,בלא

א הו

בלורמס

,ם ש

ר אחול

ם כירו אותילחב הותשמ

ר שכא

ד חוביי

ותירש

ם ש

א בקהחלהמ

,דהש

ם ש

או ,

ל שלמ

מו כ

java.lang.System.println

ת מוש

ל כאת

או ת פיוציפי סותלקמח

ת מוש

א יבלי

ר שאפ

וד קבץקו ללהבימח

ת קוחלהמ

: import java.io.InputStream;

import java.lang.*;

• 'בג

ה אוו

1.5

עלומ

ם עיבוהק

ת מוש

ת אבאליי

ם גשראפ

ה יםדרוגשמ

ה לקמח ב

)st

atic

impo

rt(

Page 85: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

ף ד

יםברהס

יק ר

Page 86: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

תמוש החבמר

ם כוסי

כי ררהי

ת מוש

ב רח מירגדלה

ת רושאפ מותמיפני

ת קוחלמ

ד קו הנהמב

ת אקףששמ

)מי בשתמש ממי

,מה ליךשי

ה מ

( •

ג יצלי

ת מנ

ל עקרעי בותשימושי

ת מיווניאנ

ת קוחלמ

קיחל

ת רושו קותורצדרופ

(ת cl

osur

es (

יםתוני נבנבמ

ת ניוצוחי

ת קוחל מבין

ת כובו סותלוימת

ע מנהי לאיכד

לייאיווטר

א לירחבמתת ומיופניו

ש מושי

ת וליכ

ין ברהחי בשתור דשם לנההג המת ררתחיב

ותריולוד מביןה וחבהרו

protected

תרביו

ת תיעייהב

ה גנהה

ת רמ

א הי

,

נו לאין

כי תיומ

ב חייר

מי ג שמו

מיופני

ת קוחלמ

יקדוי מתר יוותריולוד מוםיח תותשראפ מת

Page 87: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

ף ד

יםברהס

יק ר

Page 88: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

ק חל

ת 11קודיב

)

Testing

(

Page 89: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

ף ד

יםברהס

יק ר

Page 90: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

םניכות נניוכת

או ל דומוש

ם עיודך יאי

?

• ותימא

:יךהלת

רמפו

פן או בדאלוו

ד ועמיש

א

רמפו

א לאו

לי א

לי זהחו לחסבי

ת כניתו

או ל דומו

ל ש

ת ונונכ

לי כל הרהמק ברישאפ

נו אי

טי מאטואו

לי מאור פותימא

)א ל

יעכר

( •

ת מואי

לי או

ט פר

ת כוערהמ

ב רו לדי מקרי ידני יאלרמפו

ת רושין יבה

ם וייתל

ם אד

יי שח

ת כוערלמ

)ותאיפור

,ותטסמו

,ליכוו

,אוי ריהשה

ה ממ

ת מואי

ת חו פשם יש

ם גבלא

( •

ת קודיב

)te

stin

g(:

ת מנ

ל ענהוכהת

ל ש

ת צוהר

ת דר סועיצ ב

יםגמ פואמצ לותעדמיוש

,שם יא

,נו חונבט

ת אילגדלהו

תהונונכב

ותכונח נטימב

א ל

,וםכל מוב טתר יובלא

,פן או בודמא

ל עימוו

יםגמהפ

ר ספ מנתקטלה

שי מע

Page 91: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

ף ד

יםברהס

יק ר

Page 92: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

םייח לאהרי בשהגי

ף קשמש

ח נומי

ר שכא

סט טרתוב עלא

ת ונימכה

,בןעצ מבןמו כזה

,ה ל זאב

ל כל

ך דרב

וי שרי הכון משל

ון שלכי

א ל

טס האת

ע יצשב

ט•

ל ש

ה אל מטיןלולח

ם דיפרם נ הקהדי בשל

ה לחהצן ולושכי

דקנב הודהק

! •

ה יקבד

חהלימצ

ם א

פגה גל מיאה

ם•

ה יקבד

לתשנכ

מגא ליא האם

א לגם פעל

ת וחדו מאו

ם פג

ה ל

יםקי

באם

ד קושה

ר אמם נפג

ל עחתדוו מקהדי

קהדיהב

ת אבר עלא

,להשנכ

ה יקבדשה

ר אמא נול

בי חיו

ע רואי

א הו

ם פג

ל עוחדו

)ליאו

ח שמ מלא

,ביחיו

ל אב

(כי

ק נז

ד עו

ם ור גואשה

ני לפ

ם פג

ון יקלת

ת רושאפ

ק ספ מואה

Page 93: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

ף ד

יםברהס

רי

ק

Page 94: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

תקודי בגיסו

ה שלוש

ה ידיח

ת קודיב

)un

it t

ests

( ד וד בולוד מותדקבו

)ל כל

ך דרב

קהחלמ

חת א

ותלקמח

ר ספ מאו

ותורש ק

( •

להכו

ת כניתו האת

ת קווד ביהרצטגאינ

ת קודיב

,ל ש

ה וצקב

או חדבי

ם לידומו

;ל ש

ה ידיח הותיקבד

ר אח לידתמ

ת צעתבמיםדדבו היםולודהמ

)ת ארועבש

ם לידומו

ל עמרלוכ

ת קודיב

ה ידיחה

הםשל

( •

ה בל קותיקבד

)ac

cept

ance

tes

ts(

ח קוהל

די ל י עותצעתבח מקו לורבת

ד פקמתש

ת צוו

די ל י עאו

,וחיתהפ

ת צוו

די ל י עלא

שמושי לסהכני

ר אח לגם

,דקיבלה

ה שמע לכהשיממ

ה כנתוה

,יםתימי איםשתמש מצל אבלא

;ח יוו דנוןנג מיהיהש

וי רצ

זה הלבש ביםגלמתש

ם מיפגת ולותקל

ו, ת אקןלת

וי רצ

לוהל

ם מיפגה

Page 95: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

ף ד

יםברהס

יק ר

Page 96: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

תחותופ

ת אוספקות ורוחוש

ת אוספקו

ל ע

ל כ

צנהוכ תולודמ

דהחית יקודי בשל

ם גיסו

ני ש

ע בצ ליךר

ה ורשח

ה פסקו

ת קודיב

)bl

ack-

box

test

s(

איםדקבו

ד קו הת

יםקי ליחבט מואשה

ה חוז הולמ

,ת ויותל

נן אי

הן ו

שמומיב

וי יס כותיקבד

)co

vera

ge t

ests

או

glas

s-bo

x te

sts

(ת גווא ד

ותיקבד המןבזש

,וץתר

ד קו

ת יס פכל

,סוי מיםקרבמו

יםמ

,ותור צמהבכ

ר ותץ ירות

ט סתואו

כן ול

ש מומי בותלוי תלא

ה ורשח

ה פסקו

ת קודיב

קודיב

סוי משקמנ

ל ש

ם שימומי הכל לקף תת

, םיםדיתיהע

ם ג

,חיוכהנ

ש מומי ביםקונתים וויישינ לרטבפו

ודהק

ת איםכנעד משרכא

כן עד ליךצר

וי יס כותיקבד

Page 97: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

ף ד

יםברהס

יק ר

Page 98: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

רהחוש

ה ספקו בםקיוד במה

?

• זהחו האת

ותירש

ל כורעב

,א הי

בו ש

ב מצ לקהדיהב

ת כניתו

ת איםיאמב

דםהק

אי תנ

ת אמתקיימ

,ותירש ליםראקו

,אי תנש

ם קיודוב

יםקימת

ר אחה

הקאי תנ

ת איםקי לחת ארךמד

ר ותש ים ימיפעל

; דםך רי צאז

ותשונ

ם כידר

ק דולב

אי תנ

ת איםקי ליםרכ דשל

ם צו עפרמס

ש ם ימיפעשל

ר רוב

לןכו

ת אוקבד לשראפ

אי ם וקדה

;ם קיו

כי דר

ק דולב

ך ריצ

קי סו פשל

ת ונוש

""או

צה קרימק

ק דולב

ך ריוצ

Page 99: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

ף ד

יםברהס

יק ר

Page 100: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

ה ורחש

ה ספקו

)שךמה

(

• שללמ

,ם קד האיתנ

ר בוע

0<=i<=length()

ת אוקבד ליךצר

ה קרהמ

i=length()=0

,i=0<length()

,0<i=length()

,0<i<length()

,ת חולפ

ד אח

ה קר מגםו

בו ש

i=2

ה קצ הרימק

)i=0

- וi=length()

מהוגבד

(

א צולמ

ם עיסיי מ

לחנושכ

ם בהש

ם רימק

יפט

ש ממ

ה קצ

רי מק בול

)ל שלמ

ה שד

בו ש

ה קרבמ

ד פרן נופבא

ל טפ לחנושכ

ילמכ

null

כו ו

'( •

יםספ נויםקרמ

:ותצרוק

ת קורי

ת וזוחר מ

,יםיק ריםרכמע

,ני שרךמע

או ם עצ

תו או ליםחסתיישמ

ר ותו י איםנטומרגא

ר אח

אי תנ

ה כמ

ך תו מחד איםקי לוליכ

ת רושי האם

)שללמ

,"

לט קיגחר

ל עיעודשנ

או ת אורסהג

ר ספ מזרוחי

/לטפ

"(אז

הם מחד אכל

ם קיי ללו

ם רולג

ה יכצר

ה יקבדה

Page 101: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

ף ד

יםברהס

יק ר

Page 102: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

ה וזח הםא הבלא

"וןנכ

"?

• זהחו הול מודהק

ת גונההת

ת אותדקבו

ת קודיהבש

נו מרא

לתשנכ

ה יקבד

ם א

,וםפג

ד קושה

כן ית

,ה שריהדש

ם גכןית

ל אב

די מקהחז

ה חוזב

דע יויךא

זהחו האת

או ד קו האת

קן לת

ם הא

ם י

? •

ב יט הזהחו העל

נו שבוח

ת דרסו מרהצו בדנועב

ם שא

בן מוכ )

ותוחלק

ל ש

ת ונונכ

ת כחהו לבו

נו שתמש הגם

לי אוו

( ,ב רו

שמומי ביא היהבעשה

ם ויייכהס

ת מושל

ת כוער מתילת

ת דווד בותלקמח מיםפסמטש

ל ככ

ל אב

ה למש היתכנתו לוףבסו

)ת קודילב

ה ידיח

ת קודימב

יהרצטגאינ

( ,להעו

ם גו פזהחושה

וי יכהס

,ת קוחלשמ

ון כיומ

ר ותן י הותוכנמ

ת מובר

טיודרטנס

ותש

ון כיומ

ר ותה ישק

ותכבור מותרכמע

ל ש

ה כונהנ

ת גונההת האת

ון נכ

ין פילא

Page 103: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

ף ד

יםברהס

רי

ק

Page 104: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

תקופיסמ

א לרהחוש

ה ספקו

ת קודי במהל

?

• ק דולב

ר שאפ

אי כי

ה מצ מפןאוב

ם כידר הכל

ת א

ת איםקיל

דםהק

אי תנ

;יםקרהמ

ב רו בפיסואינ

או ם צו עיםרכהד

ר ספמ

public void someMethod(int depth, …

) {

if (depth == 23478)

System.out.println("xxx");

• את

א מצ תלא

ה ורשח

ה פסקו

ת יקבדש

ר רוב

הזות גונההת ה

לאה ל זאב

ני מיו דאהנר

;ה הז

ד קו הטעבק

ש תמש התןכניתו

ע בולק

די כ

ה נפבמ

)de

bugg

er(

רהצי עדתקונ

ת עלופ מלאש

ותירש השל

ה עלהפ

ל בכ

ותחר אותמאוגד

:סו משמומי

ם י

ון מי

ל ש

לם כיערמ

יםטנק

,יםולגד לחר אשמומי

;ק סופ

ifת אחרבו

ת רושי הוךבת

שמומיה

Page 105: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

ף ד

יםברהס

יק ר

Page 106: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

ויסכי

ת קודיב

ל לכ

ם רולג

ת דוועמיש

ת קודיב

סתפי

וץלר

ד קו

• ת ריושאפ הותצאתו התיש

ת אבללק

ך רי צאיתנ

ק סו פכלב )

then

/els

e(

• עם פאף

ע בצ ליךצר

ת אוולל

,חת אעםפ

,ם מיפע

תי שו

)ף א

קוה לאלו הוףלג

נו נסהכש

ה קרלמ

ם פע

ל בכ

ע בצהת ליךצרש

ד רהמק

,וםפג

ת ציוטראי

ין בברמעשה

ה קרלמ

ם מיפע

תי ש

( •

אהולמל

ת צא ליםרכ דפרמס

ש ם יא

,לןכו בשתמשלה

ך ריצ

• "כנ

ם עיםאניליבו

ם איתנ לל

"( "או

ותרוישאפ הכל

ת אוקבדל

( •

אהול לדין כנהדי

ה סיוררק

:עם פאף

,

חת אעםפ

,יםעמ פתיש

א לוד קעל

ם עיבימצי וסוכי

ם דיודשמ

ם טייומוט איםכל

ש י

סהכומ

Page 107: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

ף ד

יםברהס

יק ר

Page 108: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

איוו לאיוצת

םייצו ראול

ם ייצו ר

אי לוו

אי וצ תוקבד לגם

ת כורי צרהחוש הסהופהק

ת קודיב

חרהא

אי תנ ביםוינמצש

ם ויירצ

ל כל

ך דרב

בם גשר יאח האיתנ

ם תו סוקפס

שע פימו

נו אינ

ותשורמפ

: " לאין

ך לכ

ט פרו

ת רושי

אילוו

אי וצת

" •

יםתרמו האילוו האיוצ תאת

ם תח לוטש פידתמ

א לזה

,כי יחבט מואשה

ה ממ

ר ותם יקיי לותירש לתרמוש

נו מר אללככ

• )

ביםשתמש מבוש

ם וזי חבתתילכ

ון גנ סשי

ק סופ

mod

ifies

ותשנ לותירש לתרמו

ם מיעצ

ה איז

ר תאשמ

;ש האת

ר סו אאר

; לודוי מתר יווםיח תהוז

קשורמפ

ר ות וי

אילוו האיוצ תשל

(

• יםתרמו לרט פאילוו

אי וצ תותירש לאיןש

ק דולב

ה שק

;כן הי

שחפל

? •

אתל זבכו

,וקבדול

ד שולח

וי רצ

ם מיפעל

Page 109: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

ף ד

יםברהס

יק ר

Page 110: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

ל ש

ה פלי דשפח לכןהי

אי וצת

איוול

ש י

יםילרג

ם דישוח

: יםצמע

ת קוחלומ

ם ות אותשנ ליהטיש נשי

יםקר ממוןבה

,שללמ

ם בישאומ

ון כר זיאתקצ השל

ם וניגנמנ

ם ריאח

)יםוחפת

ם ציקב

,סךהמ

ל עותלונח

( ;ם שג

נו איר

'בגרוןיכת זצאהק

ני גנומנ

ת בנו לשראפ

ה אוו

רהקיבח

ה ול עמםשש

ם דישו חשוי

:ה רא תודהק

ל ש

ה יקסר

ותשנ לשוי עוא המי

ת א

• לג

לוהל

ם דישוהח

בי ,

ם כידר בנהשת מלא

ם צבשמ

ק דולב

ך ריצותתנשלה

לו ר סושא

ם ליגי ריםודש חשל

ה יקבדה

)רוןיכת זצאהק

(הי

ק חל

א רהחוש הסהופהק

ת קודימב

ק חל

בן מו כיא הרהקיבח

או מצשנ

ם דישו חשל

ה יקבדה

סויכי הותיקבדמ

Page 111: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

ף ד

יםברהס

יק ר

Page 112: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

םסיפוטי

ת יירכיר השל

ת קודיב

שקמנ

ת שוממשמ

ת קוחל מבילג

:ל מו

ה ורשח

ה פסקו

ת יקבד

ק שמנ השל

ה חוזה

)תואו

נו זקחי

א לאם

(שמומי השל

וי יסוכ

• ותלקמח

ת בוחימרש

ת קוחל מבילג

:ת לקמח

ל ש

ה לא מקהדי ב

יסבסה

,יםספהנו

ם תירושי השל

ה יקבד

/ל ש

ם קיחוזמ

בהחימרה

,בהחימר השל

וי יס כקתדיוב

קהחלמ

שטופ מ

ק דולב

ך רי צת

ת זרבע

ת שיוח מקהחלמ

בהחימר

Page 113: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

ף ד

יםברהס

רי

ק

Page 114: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

םקיוד ביךא

?

• וד קגיסו

ני ש

ם ביורמע

ת קודיבב

:יםפילו חיםיברכם ועימנו

• ע מנו

)dr

iver

ד קו

א הו

ה דממ

השל

ח קול

דקנב הולודמ

לו

א ורוק

פי לו חיברכ

)st

ub(

פק סיףחלמ

רתששמ

דקנב הולודהמ

ת א

ה לקמח

ל שלמ

A בשתתמשמ

-B בשתתמששמ

-C

• לדהחית ייקבד

-Bל ש

ח קו למהתד

B

ת פילו חקהחל מפקתס ו

, C-לת אוקבד ליהיה

תן שני

ת מנ

ל ע

B מרדנפ ב

-Aו -C •

אפ הכל כוטש פותהי ליךצר

פי לו חיברכ

שר•

ר ותת יתיעושמ מותהי לוליכ

א לפילוהח

ב כיהר

ם מיפעל

יףחל מוא התואוש

ל דומומה

ט שופ

,ש תמשלה

אי כד

אז ו

לוש

ת דיוסות יקודי בחרלא

תי מיהא

ל דומוב

Page 115: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

פילוח

ב כי רמו כטשופ

תי מיא היברכ התימ

?

יםקר משניב

.חדהא

,ודמא

ט שו פתימיהא

ב כיהר

ר שכא

,

לשה קאזו

א ציהמ

טהשו פתר יופהלוח

.שניוה

,או

ב רכמו

ה חוז

ם קיימ

י יתאמ היברכ השרכא טהשו פרךבד

ם קיי לשהשק

ה חוז

.ת קוחו ריםיתלע

ם קיימת

ני ש האיתנ הבלא

וטש פפילו חיברכ

ש ממ לאתל זבכ

ר שאפ

ם הא

ב יט הובשלח

אי כדו

.

ה ש קיםעמלפ

צב מכל בתימי אולוד מיףחללה

ל כושי

י ופחל

ב כי רשממל

,בלא

ד או מבלוגמ

י ופחל

ב כי רשממ לשה קלא

ם רימק בזהחו הפי לעלפוש

פיציפיהס

קהדיבב

ם ריורתעשמ

ם .

ם ביכיהר

ן בי וועמנ הבין

ם אותי

ש ור דזה

ל ש

ם פיילוהח

ת כניתו

קהדיהב

.

חרא

ל דומו

ל ש

ה קדיבב

ש משמש

ל דומו

די סון יפאו בקדולב

ך רי צמהל

?

גם פאתוצ מקהדי באם

ם פג האת

ש חפ לכןהי

ת לובק

ת דע לדיכ

.ם קיוד באם

יםולוד משני

ד יחב

, 'ב-ו' אהם מחד אאף

ל ש

ת ונונכ בחוןטבי

נו לאיןש

,ה שק

אולודבמ

ם פג

א הו

ה יקבד בשףנחש

ם פג

ם הא

ת דעל

' בולודבמ

ו א

,'ך ריוצ

הםשני בשחפל

.

Page 116: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

וןחטבי

מי ד

חוזב רכמו

ה רהחוש

ה פסקו

ת קודי בבההר

ש ורד

רטבפ

,רהמק

ל בכ

ל פעת ירושיש

ח טימב

ה חוז האם

,ל אב

ם וניש

ר אח

אי תנ

ם קיים יוניש

ם רימקב

)ר אח האיתנ

ת אשללמ

ם רימק ביגחר

ל עעהודוה

ם מיסוי מיםקרבמ

ח קולל

וי רצה

יםחרא

( ,לוהל

ת ויושראפ הכל

ת אוקבד ליךצר

אז

• ירמח

ש י ייבנסדפ

ת כנולת

:רהחוש

ה פסקו

ת קודי בתר יו

כבור משמומי

סויכי

ת קודי בבההר

ש ור ד

,ת בורכמו האם

ין ב

שלה צאתו

א הי

ותיליע לפהאיש

ל ש

או ב רכמו

ה חוז

• ה חוז האת

ק וד בלא

מו עצ

ד קו האם

)ה ש קרנואמש

פי כ

ק דולב

'בגוהאו

( ,יםפילו חיםיברכ בדםהק

אי תנ

ת אוקבד לליאו

אי כד

;דםהק

אי תנ

ת איםימקי מותוחלקשה

ון טחבי האת

ר בימג

ה ז

;ועמנ הדקבו

ר אח האיתנ

ת א

Page 117: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

ף ד

יםברהס

רי

ק

Page 118: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

תזוריהז

ון קרעי

א צולמ

וי רצ

ה כנתו בגםפ

גםהפ

ר וצה נשב

ה ודנק לתרביו

ב רוק

צהרי המןי זגב לכוןה נז

:גםהפ

ת אלהתג

ה כנתושה

אי כד

ליו עוחדוות

)יםחוז הקתדי בדיל י עשללמ

יםמרשתהמ ו

(ב רו ק

על פוםפג הודהק

ה שב

ה ודנק לתרביו

;ת יאמצ

ל עקלה יז

גםהפ

ל עוחדיו הדתקומנ

ה וראח

ש פוחי בגםהפ

וחיתהפ

מן לז

ון נכ

ה וז

:ל ככ

ר מה

ם פג האת

ה גלשנ

אי כד

תו או

נו צרשי

ר אח לשראפה

)ל ש

ת תיויריצ הריוצ תהם

ם מיפג

יםתחמפ

,ללבכ

ה כנתו

או ת כניתו

ל ש

ת בנימו

ה כונ תלא

( ;ה ז

ונויק תאת

ל וזי ויקלי

שראפ הכל כדםוק מדהחית יקודי בשממ לצוי רכןל

;ת קודיב

ולודהמ

ל ש

ש מומי הפני לשממ לצויור

ר שאפ

ה ורשח

ה פסקו

,שמומי החרלא

ד מיי

ש ממ לצוי רסויכי

ת קודיוב

;אי כד

א ל

כבתעלה

Page 119: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

ף ד

יםברהס

רי

ק

Page 120: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

יהסגר רתקודיב

בגם פיםגלשמ

ם פע

ל בכ

נהוכת

,ה כנתו החיי

ל ש

ב של

ל בכ

)ם ג

שמושי לסהכנשנ

ר אחל

(ת אפתשחוש

ה יקבד

ף סיהו לש י

גםהפ

,ומכל

בלתשנכש

ר סהגר

ברתוב עבל אגםהפ

ם ע

סהגר

נתוקמתה

רהחוש הסהופהק

ת קודילב

ף וסתו תקהדיהב

ם מיפעל

וי יסהכ

ת קודילב

ם מיפעול

)ק דו הפןאו בורש קגםהפ

ם א

זהחו ללאש ומומיל

( •

לםש הותיקבד הסט

ת א

,רו וצשנ

לו הל

ת קודיהב

ל כללכו

פגוי יל גותקבבע

יםמ

,ל דומו בנוישי

ל כחרלא

ם צירימ

טיוונרלה

א ודלו

ת מנ

ל ע

יהרסרג לרם גלא

וי שינה

,ר ומכל

יםשנם ימיפג

ל ש

ת שודמח

ה פעהול

צגמיי

ת קודיהב

ט ס

,נתוקמת הנהוכהת

מו כ

ינ, ר טבמצ

ון סי

לו ש וי

תיעושמ מלילכוכ

ני טכ

ך ער

Page 121: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

ף ד

יםברהס

יק ר

Page 122: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

קהדיבב

ש מתשלה

ק סיפלה

תי מ

לאם וללע

ל כלכ

וראמכ

ל, עם טאיןב ו ררך עשת יקודיהב

ט ס

,לל כרךבד

,יםגמ פותגל ליהשושע

ה יקבד בשתמשלה

ק סיהפל

אתם זע

,יאבר

ון גיבה

ש תמשלה

ש י

ר שו קיהשה

ם פג

ה דקשב

ה סיגר רקתדיבב

ש תמשלה

ם טע

ין א

שמומי האת

ין וטחל לפנוחל האם

ש מומי לוקהד

פן אוב

יקבד

ל ש

ם צו עסט בשתמשלה

ך שיהמ לעם טאין

ב של באם

ת ו

סומ

ת פוקי מסויכי

ת קודילב

ם ריוב עים

)ם רימק

או מצ

ם ריחקמ ת אסהכי

א לותיקבד

ל ש

ם צו עסט

ם בהש

ל כ

ודהק

,תן שני

סויכי האת

ה רבבה

ד ריהו ללי בכןתו מיקלקבח

ש תמשלה

ה הי

,ר ספבמ

וי יסהכ

ת איםשללה

ה הי

תן שניו

ל ש

טן ק

ת קודיב

נוותספ

;ובט

ת קודי בסט

ם ענהוכלת

ה וז

!(

Page 123: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

ף ד

יםברהס

יק ר

Page 124: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

ה מוגד

רהוזמ

ה קדילב

תקצדמו

ל אב

• ח נני

בשתתמש ממתסוי מקהחלשמ

קצפונ

יהפר סית

,ה ורבצ

טיןלולח

ה כוננ

,ת צינקפו

ל ש

ה חוז בכוןש נמושי

ך תו

ר ומכל

ריספה

הי•

נהוכבת

ם פג

ל עוחדו מוחלק

,רי אחו

ה עיהבש

ר תבמס

ר רובי

שא הי

בל אצ

ת קנותשמ

ת טידרטנהס

ה רייספ השל

ה רסג ח קוהל

)ח נני

JDK

1.4.

1(

ה ריספ היתנצפו בגם פש י

)ל שלמ

ר ספ מאגב

4302

884

ה לקמח ב

java.applet.

AudioClip

ביםאג באו

ת אורס געל

ק ריםיעשפשמ

ה ריספ

סומ

להפעהה

ת רכמע

ל ש

ת מוי

( •

שה יקבד

ף סינו

מהמד

קן נתת וטידרטנהס

ה ריספ בגםהפ

ת אלנוש

ה לקמח האת

;ד קו הוחדוהמ

ם פג לדעמו

ה הי

א של

מי לנהשו מעת כאהיר

,רהמוז

ה ראתי

ה יקבדוה

,ם יהשנ

ל אבגםהפ

ת זר חועמנ ליהשו עהזו

ה יקבדוה

ם קיצדמו

Page 125: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

ף ד

יםברהס

יק ר

Page 126: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

תיוטמטואו

ת יולה

ת כורי צתקודיב

בהטו

א לקהדי ביא הדם אשל

ת בוערהת

ת שורשד

ה יקבד

,כי

שיל כריאח

ה לי עורחז לקר וישהק

נהוכבת

וי נ

כןל

, •

יקבד

ל כ

ת היו לכהרי צדהדי בה

יתמטטואו

ון גנמנ

ך ריוצ

)נהוכת

(שמ

ל כעל

ח דווומ

ת קודיהב

ל כאת

ץ רי

לותגשה

ם מיפגה

לק חרק

לי או

ץ רילה

ך רי ציםעמלפ

,וי שינ

נו צעבי

ם אשללמ

נהוכבת

טן ק

;לןכו

ת איץהר לאיכד

ת רוהי מותיקבד האם

ל אב

Page 127: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

ף ד

יםברהס

יק ר

Page 128: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

תשינוא

ת בוערתמה

ם עימנך נאי

דם אשקמנ

די ל י עלתפעמו

ה כנתו האם

-ה כונמ

)ק שמנ

ל שלמ

ש תמשמ

פיגר

,וריב דדיל י עאו

,מהדווכ

( ,ם גלה

ת בנו לאיכד

פילו חשקמנ

,בדבל

ת קודי ברךצול

,ק חל האת

ק דויבל ועייפש

אליונקצפונה

י•

ק שמנ האת

ה אל כיםקרבמו

ש תמשלמ

ודלח

ק דונב

ם קישמנ

ת יקבד ליםחדמיו

ם לי כגם

ש י

יםפיגר

:ר שאפש

ם לי כ

ברעכ

ל ש

ה ועתנ

ם בה

ת כנלת

,דתקלהמ

ל עשההק

,מהדווכ

ק שמנ האת

ל עיהפ לדהקיתפש

ת חדמיו

ה מרחו

ם וני ביםעמלפ

ותיקבד

מן בז

ש תמשלמ

,מוכ

ל עצתוחשל

ת טיבורו

ע רו ז

rese

t

• לו עייפש

ם שייאנו

ם קיוד בעל

ך תמהס לשראפ

ם רו חרהמקב

ותובכת

ת חיוהנ

פי ל עכתערהמ

ת א

,מין אותפח

ה ל זאב

,ה ז

קרי

,מםשע מזהו

Page 129: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

ף ד

יםברהס

יק ר

Page 130: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

תקודיהב

א שנו

ם כוסי

דהחית יקודיב

,יהרצטגאינ

,להקב

,טחשמה

ם חייוו דלתקבו

סויכי

ת קודי במתעו לרהחוש

ה פסקו

ת קודיב

יםוראס

אי לוו

אי וצ תשל

ד וקממ

ש פוחי

ש מומי החרלא

ם קדמו

ע בצהת לותיכצר

ה יקבד

)ש ממ לשראפ

ת א

ת קודיב

סהופהק

ולודהמ

ש מומי

ני לפ

ה ורשח ה

( ם תיעיול

שךהמ בותופתכ

)ודבק

ם ויישינ הצב קמתעו לותופתכ

( •

וףתכ העןצובי

ל עקל מותיקבד הכוןמי

וד קשל

ה סיגר רנעמו

הן בשךתמ משמושית ורוטבמצ

ת קודיב

להדו גקהדי בותעל ליםילוב מכבור מודוק

ם כיבו סיםחוז

Page 131: ףד קיר - cs.tau.ac.ilstoledo/Courses/oopj/Presentation_09_10_11.pdfףד םירבסה קיר. קלח 9 ְכּ הקלחמה ֵי תוש המצע ינפב

ף ד

יםברהס

יק ר