מבוא מלא לשיעורי מופשט בג'אווה



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

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

מהן שיעורים מופשטים בג'אווה?

שיעורים מופשטים ב לשמש גבול בין שיטת היישום לפונקציונליות שלה. הוא משמש להחלפת הפונקציונליות בין ה- בֵּטוֹן חברי הכיתה וה תַקצִיר מעמד.





Abstract-Classes-in-Java-Edureka

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

מיון מערך בתוכנית c ++

מדוע אנו זקוקים לשיעורי מופשט בג'אווה?

אנו זקוקים לשיעורי מופשט בג'אווה מהסיבות הבאות:



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

כללים לשימוש בשיעורי מופשט בג'אווה

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



  • יש להכריז על כיתה מופשטת באמצעות תַקצִיר מילת מפתח.
  • שיעורים מופשטים יכולים לכלול תַקצִיר ו לא מופשט שיטות.
  • מעמד מופשט אינו יכול להיות מיידית.
  • הם יכולים לכלול בונים ו סטָטִי שיטות.
  • שיעור מופשט כולל סופי שיטות.

דרכים להשיג הפשטה בג'אווה

ניתן להשיג את תהליך ההפשטה בג'אווה בשתי השיטות הבאות כאמור להלן:

  1. יישום כיתה מופשטת
  2. יישום ממשק

התחביר לשיעורים מופשטים

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

שיעור מופשט אדוריקה {}
שיטת מחלקה מופשטת ()

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

// כיתה מופשטת

חבילה תקציר מופע ציבורי מחלקה אדם {פרטי שם מחרוזת פרטי מין מחרוזת אדם ציבורי (מחרוזת nm, מחרוזת gen) {this.name = nm this.gender = gen} תקציר ציבורי בטל לומד () @ העבר לציבור מחרוזת toString () {return ' שם = '+ this.name +' :: מין = '+ this.gender}}

// כיתת סטודנטים

חבילה תקציר מחלקה ציבורית תלמיד מרחיב את האדם {private int StudentID public Student (מחרוזת nm, מחרוזת gen, int id) {super (nm, gen) this.StudentID = id} @ עקוף ריק חלל לומד () {if (StudentID == 0 ) {System.out.println ('לא לומד')} אחר {System.out.println ('לומד תואר ראשון בהנדסה')}} ראשי סטטי ציבורי ריק (טענות מחרוזת []) {אדם סטודנט = סטודנט חדש ('Priya', 'נקבה', 0) סטודנט / ת סטודנט 1 = סטודנט חדש ('Karan', 'זכר', 201021) סטודנט / אדם 2 = סטודנט חדש ('Kumari', 'נקבה', 101021) סטודנט / אדם 3 = סטודנט חדש (' ג'ון ',' זכר ', 201661) סטודנט. לומד () סטודנט 1. לומד () סטודנט 2 .לומד () סטודנט 3.Studying () System.out.println (student.toString ()) System.out.println (student1.toString ()) System.out.println (student2.toString ()) System.out.println (student3.toString ())}}

תְפוּקָה:

מחרוזת תאריכי java עד היום

לא לומד
לומד תואר ראשון בהנדסה
לומד תואר ראשון בהנדסה
לומד תואר ראשון בהנדסה
שם = פרייה :: מין = נקבה
שם = Karan :: מין = זכר
שם = קומארי :: מין = נקבה
שם = ג'ון :: מין = זכר

ההבדל בין ממשק לשיעור מופשט

מִמְשָׁק כיתה מופשטת
יכולות להיות רק שיטות מופשטותיכולות להיות שיטות מופשטות ולא מופשטות
יש בו רק משתנים סופייםהוא כולל משתנים שאינם סופיים
יש לו משתנים סטטיים וסופיים בלבדיש בו משתנים סטטיים, לא סטטיים, סופיים, לא סופיים
לא יישם את הכיתה המופשטתיכול ליישם ממשק
מיושם באמצעות מילת המפתח 'מיישמת'מיושם באמצעות מילת המפתח 'מרחיב'
יכול להאריך ממשק בלבדיכול להרחיב את כיתות וממשקי Java
החברים הם ציבוריים כברירת מחדלחברים יכולים להיות פרטיים ומוגנים

// דוגמה כיתתית מופשטת

חבילה abstactVSinterface מחלקה מופשטת צורה {String objectName = 'צורה (שם מחרוזת) {this.objectName = name} שטח כפול ציבורי מופשט () ציור חלל ציבורי מופשט ()} מחלקה מלבן מאריך צורה {int אורך, רוחב מלבן (אורך int, רוחב int, שם מחרוזת) {סופר (שם) this.length = אורך this.width = רוחב} @ עקירה רישום חלל ציבורי () {System.out.println ('מלבן נמשך')} @ עקוף שטח כפול ציבורי () {return (כפול) (אורך * רוחב)}} מחלקה מעגל מתארך צורה {כפול pi = 3.14 רדיוס int מעגל (int רדיוס, שם מחרוזת) {super (name) this.radius = radius} @ Override public void draw () { System.out.println ('המעגל מצויר')} @ אזור כפול ציבורי ציבורי () {return (double) ((pi * radius * radius) / 2)}} class Edureka {public static void main (String [] args ) {Shape rect = מלבן חדש (20, 30, 'מלבן') System.out.println ('שטח של מלבן:' + rect.area ()) מעגל צורה = מעגל חדש (20, 'Cicle') System.out .println ('שטח המעגל הוא:' + circle.area ())}}

תְפוּקָה:

מהו משתנה מופע בג'אווה

שטח המלבן: 600.0
שטח המעגל הוא: 628.0

// דוגמת ממשק

חבילה ממשק absVSint צורה {רישום חלל () שטח כפול ()} מחלקה מלבן מיישמת צורה {int אורך, רוחב מלבן (int אורך, int רוחב) {this.length = אורך this.width = רוחב} @ עקוב לצייר חלל ציבורי () {System.out.println ('מלבן צויר')} @ שטח כפול ציבורי ציבורי () {החזר (כפול) (אורך * רוחב)}} מחלקה מעגל מיישמת צורה {כפול pi = 3.14 רדיוס int מעגל (רדיוס int) {this.radius = radius} @Override public void draw () {System.out.println ('מעגל נמשך')} @Override אזור כפול ציבורי () {return (double) ((pi * radius * radius) / 2)}} מחלקה אדוריקה {ראשי ריק סטטי ציבורי (מחרוזת [] טענות) {Shape rect = מלבן חדש (20, 30) System.out.println ('שטח של מלבן:' + rect.area ()) צורת מעגל = מעגל חדש (20) System.out.println ('אזור המעגל:' + מעגל.שטח ())}}

תְפוּקָה:

שטח המלבן: 600.0
שטח המעגל: 628.0

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

כעת לאחר שהבנתם את היסודות של ג'אווה, עיינו ב מאת אדוריקה, חברת למידה מקוונת מהימנה עם רשת של יותר מ -250,000 לומדים מרוצים הפזורים ברחבי העולם. קורס ההכשרה וההסמכה של Java J2EE ו- SOA של אדוריקה מיועד לסטודנטים ואנשי מקצוע שרוצים להיות מפתח Java. הקורס נועד לתת לך יתרון בתכנות ג'אווה ולהכשיר אותך למושגי הליבה והמתקדמים של Java יחד עם מסגרות Java שונות כמו Hibernate & אביב .

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