Programming Basics SQL HTML CSS JavaScript Python C++ Java JavaFX Swing Problem Solving English English Conversations Computer Fundamentals Learn Typing

Javaمثال حول تعريف دوال لها نفس الإسم و تختلف في عدد الباراميترات في جافا

في المثال التالي قمنا بتعريف كلاس إسمه MyInfo, يحتوي على ثلاث دوال إسمهم displayInfo() و نوعهم public void.
الدالة الأولى تأخذ باراميتر واحد عبارة عن الإسم, ثم تقوم بطباعته.
الدالة الثانية تأخذ إثنين باراميتر عبارة عن الإسم و إسم العائلة, ثم تقوم بطباعتهما.
الدالة الثالثة تأخذ ثلاثة باراميترات عبارة عن الإسم و إسم العائلة و الوظيفة, ثم تقوم بطباعتهم.

بعد إنشاء هذا الكلاس, قمنا بإنشاء الكلاس Main و إستدعاء الدوال الثلاثة فيه.


مثال

MyInfo.java
public class MyInfo {
public void displayInfo(String name) {
System.out.println("name: " +name);
System.out.println("---------------------");
}
public void displayInfo(String name, String lastName) {
System.out.println("name: " +name);
System.out.println("last name: " +lastName);
System.out.println("---------------------");
}
public void displayInfo(String name, String lastName, String job) {
System.out.println("name: " +name);
System.out.println("last name: " +lastName);
System.out.println("job: " +job);
System.out.println("---------------------");
}
}
public class MyInfo { public void displayInfo(String name) { System.out.println("name: " +name); System.out.println("---------------------"); } public void displayInfo(String name, String lastName) { System.out.println("name: " +name); System.out.println("last name: " +lastName); System.out.println("---------------------"); } public void displayInfo(String name, String lastName, String job) { System.out.println("name: " +name); System.out.println("last name: " +lastName); System.out.println("job: " +job); System.out.println("---------------------"); } }

Main.java
public class Main {
public static void main(String[] args) {
MyInfo m = new MyInfo(); // لإستدعاء الدوال منه MyInfo هنا قمنا بإنشاء كائن من الكلاس
m.displayInfo("Mhamad"); // هنا سيتم إستدعاء الدالة التي تأخذ باراميتر واحد
m.displayInfo("Mhamad", "Harmush"); // هنا سيتم إستدعاء الدالة التي تأخذ 2 باراميتر
m.displayInfo("Mhamad", "Harmush", "programmer"); // هنا سيتم إستدعاء الدالة التي تأخذ 3 باراميترات
}
}
public class Main { public static void main(String[] args) { MyInfo m = new MyInfo(); // لإستدعاء الدوال منه MyInfo هنا قمنا بإنشاء كائن من الكلاس m.displayInfo("Mhamad"); // هنا سيتم إستدعاء الدالة التي تأخذ باراميتر واحد m.displayInfo("Mhamad", "Harmush"); // هنا سيتم إستدعاء الدالة التي تأخذ 2 باراميتر m.displayInfo("Mhamad", "Harmush", "programmer"); // هنا سيتم إستدعاء الدالة التي تأخذ 3 باراميترات } }

سنحصل على النتيجة التالية عند التشغيل.

name: Mhamad
---------------------
name: Mhamad
last name: Harmush
---------------------
name: Mhamad
last name: Harmush
job: programmer
---------------------
name: Mhamad --------------------- name: Mhamad last name: Harmush --------------------- name: Mhamad last name: Harmush job: programmer ---------------------

كما لاحظت هنا, في كل مرة قمنا فيها باستدعاء الدالة displayInfo() وجدنا أن المترجم قام باستدعاء الدالة displayInfo() التي تحتوي على نفس عدد الباراميترات الذي كنا نمرره لها.