מה ההבדל בין מחלקה מופשטת לממשק ב- PHP

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

Anonim

ה ההבדל העיקרי בין מחלקה מופשטת לממשק ב- PHP זה מחלקה מופשטת יכולה להיות מורכבת משיטות מופשטות ושיטות לא מופשטות בעוד שלכל השיטות בממשק אין יישומים.

PHP היא שפת סקריפטים בצד השרת. זוהי אחת השפות הפופולריות ביותר בפיתוח אתרים. PHP מאפשר טיפול בקבצים, טיפול בטפסים, שליחת מיילים, העלאת קבצים, חיבור יישום עם DBMS כגון MySQL ומשימות רבות אחרות. מסגרות כגון Zend ו- Code Igniter מבוססות על PHP. PHP תומך גם בתכנות מונחה אובייקטים (OOP). מושג מרכזי אחד ב- OOP הוא הפשטה. זה עוזר להסתיר יישומים ולהציג למשתמש רק את הפונקציונליות. כיתה מופשטת וממשק הן שתי שיטות להשגת הפשטה.

הפשטה, שיעור מופשט, ממשק, OOP, PHP

מהו שיעור מופשט ב- PHP

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

איור 1: שיעור מופשט ב- PHP

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

מהו ממשק ב- PHP

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

איור 2: תוכנית PHP 1 עם ממשק

בתוכנית לעיל, Shape הוא ממשק. יש לו שיטה שנקראת צייר. אין לזה יישום. המשולש בכיתה מרחיב את הצורה. מחלקת המשולש מספקת את ההטמעה של שיטת הציור. בשורה 16 ​​נוצר אובייקט של אובייקט משולש. בשורה 17, שיטת הציור נקראת באמצעות אותו אובייקט. לכן, שיטת הציור מבצעת ומציגה את "המשולש" בקונסולה.

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

איור 3: תוכנית PHP עם ממשקים

לממשק A יש שיטת שיטה A. באופן דומה, לממשק B יש שיטת שיטה B. שיטות אלה הן אב טיפוס של פונקציות. במילים אחרות, לשיטות אלה אין יישומים. Class Test מיישם את הממשק A ו- B. לכן, מחלקה זו מספקת יישומים עבור שיטה A ושיטה B. ל- Class Test יש גם שיטה משלה הנקראת methodTest. שורה 26, יוצרת אובייקט של מבחן. לאחר מכן נקראים methodA, method, and methodTest באמצעות אובייקט זה.

ההבדל בין מחלקה מופשטת לממשק ב- PHP

הַגדָרָה

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

שיטות

בכיתה מופשטת יכולות להיות שיטות מופשטות כמו גם שיטות לא מופשטות בעוד שכל השיטות בממשק הן שיטה ללא יישומים.

מילת מפתח

בעוד שמעמד מופשט מוכרז עם מילת המפתח "מופשטת", ממשק מוכרז עם מילת המפתח "ממשק".

נוֹהָג

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

סיכום

שפת PHP תומכת בתכנות מונחה אובייקטים. הפשטה היא נדבך של OOP. שיעורים מופשטים וממשקים הם שתי שיטות להשגת הפשטה. ההבדל העיקרי בין מחלקה מופשטת לממשק ב- PHP הוא שהמחלקה המופשטת יכולה להיות מורכבת משיטות מופשטות ושיטות לא מופשטות, בעוד שלכל השיטות בממשק אין יישומים.

הפניות:

1. "שיעורים מופשטים ב- PHP." GeeksforGeeks, 11 בדצמבר 2018, זמין כאן. 2. "ירושה מרובה ב- PHP." GeeksforGeeks, 21 בפברואר 2019, זמין כאן.

מה ההבדל בין מחלקה מופשטת לממשק ב- PHP