תכנות מתקדם ב-Java/זרמים: הבדלים בין גרסאות בדף
תוכן שנמחק תוכן שנוסף
Johnny Zoo (שיחה | תרומות) מ בעבודה |
Johnny Zoo (שיחה | תרומות) מאין תקציר עריכה |
||
שורה 50:
==עטיפה של זרמים==
הזרמים הבסיסיים מכילים מספר מצומצם של תכונות: קריאה או כתיבה פשוטה בלבד. כדי לעשות אותם נוחים יותר לעבודה, ניתן לעטוף אותם. למשל: הזרם הבסיסי שראינו, FileInputStream, מאפשר קריאה סדרתית של הקובץ. נניח כעת שאנו רוצים להוסיף לו חוצץ (Buffer) - מעין מערך פנימי בו נאגרים הנתונים שנקראים מהקובץ. למטרה זו, קיימת המחלקה BufferedInputStream, שיכולה לעטוף אובייקט מטיפוס InputStream. העטיפה נעשית בצורה הבאה (בהנחה ש-f הוא אובייקט מטיפוס File שכבר אותחל קודם):
{{קוד|<nowiki>BufferedInputStream bfi = new BufferedInputStream(new FileInputStream(f));</nowiki>}}
כעת האובייקט החדש שיצרנו מהווה מעין "עטיפה" סביב האובייקט המקורי. את הפעולות שנרצה לבצע - נבצע על האובייקט החדש.
==זרמים שכדאי להכיר==
|