הוסטס - פורום אחסון האתרים הגדול בישראל

הוסטס - פורום אחסון האתרים הגדול בישראל (https://hosts.co.il/forums/index.php)
-   פורום תיכנות (https://hosts.co.il/forums/forumdisplay.php?f=14)
-   -   לא הצלחתי להבין מה זה מחלקה (https://hosts.co.il/forums/showthread.php?t=24678)

הכומר 23-06-06 16:05

לא הצלחתי להבין מה זה מחלקה
 
מה זה מחלקה, אם אפשר הסבר מלא שכולל הורשה,קריאה לפונקציה במחלקה וכד'

תודה.

CSite.co.il 23-06-06 16:43

לא הצלחתי להבין על מה אתה מדבר.
מה מו מי? PHP/ASP - נפנה אותך למקום המתאים.

Tomer 23-06-06 16:54

ציטוט:

נכתב במקור על ידי MnM
לא הצלחתי להבין על מה אתה מדבר.
מה מו מי? PHP/ASP - נפנה אותך למקום המתאים.

http://php.net/oop

BlueNosE 23-06-06 16:59

PHP קוד:

class yup//הגדרת מחלקה חדשה
{
/*הגדרות איברים*/
var $dom;
var 
$name;
/*סוף הגדרות איברים*/
function yup($domain$name)//בונה את המחלקה, חייב להיות בשם המחלקה
{
/*הזנת נתונים אל האיברים*/
$this->dom $domain;
$this->name $name;
}
function 
printinfo($type)//פונקציה רגילה
{
if (
$type == "domain")
return 
$this->dom;//מחזיר איבר מהמחלקה. כמו כן אפשר גם לשנות נתונים עם פונקצייה רגילה
elseif ($type == "name")
return 
$this->name
}
}
$yup1 = new yup('Yup.co.il','Omer');//פה בצד יש הגדרת מחלקה.. עם נתונים שמוזנים
//לתוך פונקצית הבנאי
echo $yup1->printinfo("name");//מחזיר את הפונקצייה printinfo, מבצע על האובייקט yup1
//כלומר ידפיס Omer
echo "<br /><br />";
$yup2 = new yup('Yup.com','BlueNosE');//הגדרת מחלקה נוספת, כלומר אובייקט נוסף
echo $yup2->printinfo("domain");//מחזיר מתוך yup2 הפעם
//והפעם domain ולא name.
//כלומר: Yup.com 


lalamen 23-06-06 17:06

ציטוט:

נכתב במקור על ידי BlueNosE
PHP קוד:

function yup($domain$name)//בונה את הפונקציה, חייב להיות בשם המחלקה



זה לא נכון, כשאתה נותן לפונקציה את השם של המחלקה אתה הופך אותה לפונקציה הראשית והיא תרוץ כאשר אתה יוצר את המחלקה

omaniusd 23-06-06 17:48

ציטוט:

נכתב במקור על ידי lalamen
זה לא נכון, כשאתה נותן לפונקציה את השם של המחלקה אתה הופך אותה לפונקציה הראשית והיא תרוץ כאשר אתה יוצר את המחלקה

זה נקרא constructor, בנאי.

RS324 23-06-06 19:04

ציטוט:

/*הגדרות איברים*/
var $dom;
var $name;
/*סוף הגדרות איברים*/
החלק הזה אינו חובה - אלא אם כן אתה מעוניין לאפס את המשתנים כשקוראים למחלקה

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

link 23-06-06 20:16

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

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

זו הדוגמא הכי טובה שלי.


כל הזמנים הם GMT +2. הזמן כעת הוא 06:53.

מופעל באמצעות VBulletin גרסה 3.8.6
כל הזכויות שמורות ©
כל הזכויות שמורות לסולל יבוא ורשתות (1997) בע"מ