logo

אנקפסולציה בג'אווה

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

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

יישום Encapsulation ב-Java

  • הכרזה על נתונים כפרטיים: הסתר את נתוני הכיתה כך שלא ניתן לגשת אליהם ישירות מחוץ לכיתה.
  • השתמש ב-Gutters ו-seters: שמור על משתנים פרטיים וספק שיטות מגדיר ומגדיר ציבוריים לגישה מבוקרת ושינוי בטוח, לעתים קרובות עם אימות.
  • החל משנה גישה נאותה: השתמש בפרטי להסתרת נתונים ובציבורי לשיטות המספקות גישה.
Java
class Programmer {  private String name;  // Getter method used to get the data  public String getName() { return name; }  // Setter method is used to set or modify the data  public void setName(String name) {    this.name = name;  } } public class Geeks {  public static void main(String[] args){    Programmer p = new Programmer();  p.setName('Geek');  System.out.println('Name=> ' + p.getName());  } } 

תְפוּקָה
Name=> Geek 

הֶסבֵּר: בדוגמה שלמעלה אנו משתמשים ב-encapsulation ומשתמשים ב-getter ( getName) ומגדיר ( setName) שיטה המשמשת להצגה ולשינוי של הנתונים הפרטיים. מנגנון אנקפסולציה זה מגן על המצב הפנימי של אובייקט המתכנת ומאפשר שליטה טובה יותר וגמישות באופן הגישה לתכונת השם ושינוים.

יתרונות האנקפסולציה

היתרונות של אנקפסולציה מפורטים להלן:



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

חסרונות של אנקפסולציה

החסרונות של אנקפסולציה מפורטים להלן:

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