مثال:
در اینجا، ابتدا یک متد تعریفشده توسط کاربر (User-Defined) مینویسیم و سپس آن را فراخوانی میکنیم:
CopyEdit
} class GFG
متد تعریفشده توسط کاربر //
} () void hello
;System.out.println ("This is a user-defined method.")
{
} public static void main(String[ ] args)
ایجاد یک شیء از کلاس //
;() GFG obj = new GFG
فراخوانی متد //
;() obj.hello
{
{
خروجی:
CopyEdit
.This is a user-defined method
نکته: متدهای غیر استاتیک (non-static) که توسط کاربر تعریف میشوند، فقط از طریق ایجاد یک نمونه (Object) از کلاس قابل دسترسی و فراخوانی هستند.
سه نوع مختلف از فرخوانی متدها
در اینجا سه نوع مختلف از فراخوانی متدها در جاوا را بررسی میکنیم: متدهای انتزاعی (Abstract)، متدهای از پیش تعریفشده (Predefined)، و متدهای استاتیک (Static). در ادامه آورده شده است:۱. فراخوانی متدهای انتزاعی (Abstract Methods)
متدهای انتزاعی در کلاسهای انتزاعی تعریف میشوند و حتماً باید در کلاسهای فرزند (زیرکلاسها) پیادهسازی شوند.مثال:
CopyEdit
کلاس کمکی که به صورت abstract تعریف شده //
} abstract class GFGhelp
تعریف متد انتزاعی //
;abstract void check(String n)
{
کلاس اصلی که از کلاس انتزاعی ارثبری کرده //
}public class GFG extends GFGhelp
} public static void main(String[] args)
ساخت شیء از کلاس //
;() GFG ob = new GFG
فراخوانی متد انتزاعی //
;ob.check("GFG")
{
پیادهسازی متد انتزاعی //
Override@
}void check(String n)
;System.out.println(n)
{
{
خروجی:
CopyEdit
GFG
توضیح: در این مثال، متد ()check ابتدا در کلاس انتزاعی GFGhelp تعریف شده و سپس در کلاس فرزند GFG پیادهسازی شده است. با صدا زدن این متد و دادن مقدار "GFG"، همان مقدار چاپ میشود.
۲. فراخوانی متدهای از پیش تعریفشده (Predefined Methods)
این متدها توسط کتابخانهٔ استاندارد جاوا فراهم شدهاند. مانند متد ()hashCode از کلاس Object.مثال:
CopyEdit
}public class GFG
} public static void main(String[ ] args)
ساخت شیء از کلاس //
;() GFG ob = new GFG
فراخوانی متد از پیش تعریفشده //
;System.out.println(ob.hashCode())
{
{
خروجی:
1510467688
توضیح: در این مثال، متد ()hashCode که از کلاس مادر Object به ارث رسیده، فراخوانی شده و یک عدد صحیح یکتا (کد هش) برای شیء GFG برمیگرداند.
۳. فراخوانی متدهای استاتیک (Static Methods)
متدهای استاتیک به کلاس تعلق دارند و میتوان بدون ساخت شیء آنها را فراخوانی کرد.مثال:
CopyEdit
} class test
متد استاتیک //
} () static void hello
;System.out.println("Hello")
{
{
} class GFG
} public static void main(String[ ] args)
فراخوانی متد استاتیک بدون ساخت شیء //
;() test.hello
{
{
خروجی:
CopyEdit
Hello
توضیح: در این مثال، متد استاتیک ()hello از کلاس test مستقیماً از طریق نام کلاس فراخوانی شده و پیام "Hello" را چاپ میکند.

جمعبندی: انواع روشهای فراخوانی متد در جاوا
در زبان جاوا، متدها بخش مهمی از ساختار برنامهنویسی شیءگرا هستند. برای استفاده از آنها، باید نحوهٔ فراخوانی هر نوع متد را بلد باشیم:1. متدهای انتزاعی (Abstract Methods):
o در کلاسهای abstract تعریف میشن.
o باید در کلاسهای فرزند پیادهسازی بشن.
o فقط از طریق ساخت شیء کلاس فرزند قابل فراخوانی هستن.
2. متدهای از پیش تعریفشده (Predefined Methods):
o توسط جاوا ارائه میشن، مثل ()hashCode از کلاس Object.
o معمولاً با ساخت شیء کلاس یا بهصورت مستقیم قابل استفاده هستن.
3. متدهای استاتیک (Static Methods):
o به خود کلاس تعلق دارن، نه به شیء.
o بدون نیاز به ساخت شیء میتونی اونها رو با ()ClassName.methodName فراخوانی کنی.
🧠 یاد بگیر، تمرین کن، حرفهای شو!
اکنون که با انواع متدها و نحوهٔ فراخوانی اونها آشنا شدی، وقتشه که دستبهکد بشی!
تمرین پیشنهادی:
یه کلاس ساده طراحی کن که شامل هر سه نوع متد (انتزاعی، استاتیک و از پیشتعریفشده) باشه و اونها رو توی ()main فراخوانی کن.
ورود و ثبت نام برای ارسال نظر وارد شوید