البرمجة

تشغيل الطرق الخاصة في جافا

في الواقع، يتم تعريف الطرق الخاصة بشكل طبيعي في Java لتكون مرئية فقط داخل الصف الذي تم تعريفها فيه. وهذا يعني أنه لا يمكن الوصول إليها من خارج الصف. ومع ذلك، يمكن الوصول إليها داخل الصف نفسه.

في الشفرة التي قدمتها، تحاول استدعاء طريقة displayMainMenu من داخل طريقة main، ولكن displayMainMenu معينة كخاصة، لذا لا يمكن الوصول إليها مباشرة من طريقة main. بمعنى آخر، لا يمكنك استدعاء طريقة خاصة مباشرة من طريقة أخرى خارج الصف الذي تم تعريفها فيه.

ومع ذلك، يمكنك تجاوز هذا القيد ببساطة عن طريق تحويل الطريقة displayMainMenu إلى عامة (public). وبعد ذلك، يمكنك استدعاءها بسهولة من داخل طريقة main. في الشفرة التالية، قمت بتعديل الطريقة displayMainMenu لتكون عامة:

java
import java.util.*; public class LoginPrototype { public static void main(String[] args) { ArrayList allUsers = new ArrayList(); LoginPrototype loginPrototype = new LoginPrototype(); loginPrototype.displayMainMenu(); // Now it's accessible } public void displayMainMenu() { // Changed to public int input; do { System.out.println("Menu Options"); System.out.println("[1] Login"); System.out.println("[2] Register"); System.out.println("[0] Quit");//5 Displaying Main Menu Options Scanner sc = new Scanner(System.in); input = sc.nextInt(); if (input > 2) { System.out.println("Please enter a value of [0] - [2]"); } else if (input == 1){ System.out.println("Login"); } else if (input == 2){ System.out.println("Register"); } else if (input == 0){ System.out.println("Thank you. bye."); } } while(input >= 2); } }

الآن، يمكنك استدعاء displayMainMenu بنجاح من طريقة main بما أنها أصبحت عامة، ولا تحتاج إلى استخدام أي من أساليب Reflective API.

المزيد من المعلومات

بالطبع، دعنا نوسع قليلاً على الموضوع.

عندما يتعلق الأمر بتشغيل الأساليب الخاصة في Java، هناك قواعد معينة يجب مراعاتها. الطرق الخاصة (التي تبدأ بكلمة مفتاحية private) مخصصة للاستخدام داخل الصف نفسه الذي تم تعريفها فيه. هذا يعني أنها غير مرئية خارج الصف، بما في ذلك من داخل الطرق الأخرى في نفس الصف.

عندما كنت تحاول استدعاء الطريقة displayMainMenu من داخل الطريقة main في الشفرة الأصلية، كنت تواجه خطأ لأنه لا يمكن الوصول إلى الطريقة الخاصة من الخارج. لحل هذا، يمكنك تحويل الطريقة إلى عامة (باستخدام كلمة مفتاحية public) كما قمت بتعديلها في الشفرة المصححة.

ومع ذلك، عند استخدام الطرق الخاصة، يجب أن تكون حذراً لأنها ليست مرئية للكائنات خارج الصف، وهذا يعني أنها لا يمكن الوصول إليها مباشرة من خارج الصف. ومع ذلك، يمكنك استدعائها من داخل الصف نفسه، سواء كان ذلك في البناء (constructor) أو طرق أخرى.

هذا المبدأ يعكس مفهوم الكبسولة (Encapsulation) في برمجة الكائنات، حيث يتم إخفاء تفاصيل تنفيذ الصف والتفاعل معه من قبل العملاء (clients) الآخرين. باستخدام الطرق الخاصة، يمكن للمبرمجين تنظيم الوصول إلى الأساليب وتقليل التبعية على التفاصيل الداخلية للصف.

بالتالي، بالرغم من أنك قد تواجه بعض التحديات في استخدام الأساليب الخاصة، إلا أن تحديد الطرق بشكل خاص يمكن أن يساعد على تنظيم الشفرة وتجنب الأخطاء الشائعة في البرمجة.

مقالات ذات صلة

زر الذهاب إلى الأعلى
إغلاق

أنت تستخدم إضافة Adblock

يرجى تعطيل مانع الإعلانات حيث أن موقعنا غير مزعج ولا بأس من عرض الأعلانات لك فهي تعتبر كمصدر دخل لنا و دعم مقدم منك لنا لنستمر في تقديم المحتوى المناسب و المفيد لك فلا تبخل بدعمنا عزيزي الزائر