آموزش کامل سازنده ها در جاوا (به زبان ساده)

رتبه: 5 ار 1 رای SSSSS
آموزش کامل سازنده ها در جاوا
نویسنده: تیم تولید محتوا زمان مطالعه 4 دقیقه
Banner Image

در این آموزش با سازنده ها در جاوا آشنا می شوید؛ نحوه ایجاد و استفاده از سازنده ها با کمک مثال.

سازنده چیست؟

سازنده (constructor) شبیه به متد است (اما در واقع متد نیست) که هنگام ایجاد شی فورا به صورت خودکار فراخوانی می شود.

کامپایلر جاوا با استفاده از نام و نوع بازگشتی بین متد و سازنده تفاوت قائل می شود. در جاوا ، سازنده نامی مشابه کلاس دارد و هیچ مقداری را بر نمی گرداند.

class Test {

Test() {

// constructor body

}

}

در اینجا ، ()Test سازنده است. همان نام کلاس را دارد و نوع برگشتی ندارد.

class Test {

void Test() {

// method body

}

}

در اینجا ، ()Test نامی مشابه کلاس دارد. با این حال ، نوع برگشتی آن void است. از این رو ، سازنده نیست و متد است.

مثال: سازنده در جاوا

  1. class ConsMain {
  2. private int x;
  3. // constructor
  4. private ConsMain(){
  5. System.out.println(“Constructor Called”);
  6. x = 5;
  7. }
  8. public static void main(String[] args){
  9. ConsMain obj = new ConsMain();
  10. System.out.println(“Value of x = ” + obj.x);
  11. }
  12. }

خروجی

Constructor Called

Value of x = 5

در اینجا ، سازنده ()ConsMain هنگامی که شیء obj ایجاد می شود ، فراخوانی می شود.

یک سازنده ممکن است آرگومان بپذیرد یا نپذیرد.

سازنده بدون آرگومان

اگر سازنده جاوا هیچ پارامتری را نپذیرد ، سازنده بدون آرگومان (no-arg) است. ساختار آن به این شکل است:

accessModifier ClassName() {

// constructor body

}

نمونه سازنده بدون آرگومان

  1. class NoArgCtor {
  2. int i;
  3. // constructor with no parameter
  4. private NoArgCtor(){
  5. i = 5;
  6. System.out.println(“Object created and i = ” + i);
  7. }
  8. public static void main(String[] args) {
  9. NoArgCtor obj = new NoArgCtor();
  10. }
  11. }

چرب زبان

جاوا، جاوا اسکریپت رو قورت بده! بدون کلاس، سرعت 2 برابر، ماندگاری 3 برابر، پولسازی عالی با توسعه وب، ماشین لرنینگ و ... کتابخانه های پیشرفته جاوا اسکریپت و ... دانلود:

پک کامل جاوا اسکریپت  پک آموزش Node.js  پک React.js

پک کامل جاوا

پک مبانی برنامه نویسی (اختیاری-مکمل)

خروجی

Object created and i = 5

در اینجا ، سازنده ()NoArgCtor هیچ پارامتری را نمی پذیرد.

آیا متوجه شدید که سازنده ()NoArgCtor از نوع private است؟

این امر به این دلیل است که شی از درون همان کلاس ساخته می شود. از این رو ، می تواند به سازنده دسترسی پیدا کند.

با این حال ، اگر شیء خارج از کلاس ایجاد شده است ، شما دسترسی به آن سازنده را باید public کنید. مثلا:

  1. class Company {
  2. String domainName;
  3. // object is created in another class
  4. public Company(){
  5. domainName = “programiz.com”;
  6. }
  7. }
  8. public class CompanyImplementation {
  9. public static void main(String[] args) {
  10. Company companyObj = new Company();
  11. System.out.println(“Domain name = “+ companyObj.domainName);
  12. }
  13. }

خروجی

Domain name = programiz.com

سازنده پیش فرض

اگر خودتان سازنده ایجاد نکنید ، کامپایلر جاوا به طور خودکار یک سازنده بدون آرگومان را در زمان اجرا ایجاد می کند. این سازنده به عنوان سازنده پیش فرض شناخته می شود. سازنده پیش فرض هر یک از متغیرهای نمونه غیر رسمی را مقدار دهی اولیه می کند.

سازنده پیش فرض

مثال: سازنده پیش فرض

  1. class DefaultConstructor {
  2. int a;
  3. boolean b;
  4. public static void main(String[] args) {
  5. DefaultConstructor obj = new DefaultConstructor();
  6. System.out.println(“a = ” + obj.a);
  7. System.out.println(“b = ” + obj.b);
  8. }
  9. }

برنامه بالا معادل است با:

  1. class DefaultConstructor {
  2. int a;
  3. boolean b;
  4. private DefaultConstructor() {
  5. a = 0;
  6. b = false;
  7. }
  8. public static void main(String[] args) {
  9. DefaultConstructor obj = new DefaultConstructor();
  10. System.out.println(“a = ” + obj.a);
  11. System.out.println(“b = ” + obj.b);
  12. }
  13. }

خروجی

a = 0

b = false

سازنده پارامتری

یک سازنده همچنین ممکن است پارامتر بپذیرد. ساختار آن به شکل زیر است:

accessModifier ClassName(arg1, arg2, …, argn) {

// constructor body

}

مثال: سازنده پارامتری

  1. class Vehicle {
  2. int wheels;
  3. private Vehicle(int wheels){
  4. wheels = wheels;
  5. System.out.println(wheels + ” wheeler vehicle created.”);
  6. }
  7. public static void main(String[] args) {
  8. Vehicle v1 = new Vehicle(2);
  9. Vehicle v2 = new Vehicle(3);
  10. Vehicle v3 = new Vehicle(4);
  11. }
  12. }

خروجی

۲ wheeler vehicle created.

۳ wheeler vehicle created.

۴ wheeler vehicle created.

در اینجا ، ما یک آرگومان از نوع int (تعداد چرخ ها) را در هنگام ایجاد شی به سازنده منتقل کردیم.

سربارگذاری سازنده ها در جاوا

مشابه سربارگذاری متد ، می توانید دو یا چند سازنده هم نام با پارامترهای متفاوت داشته باشید. مثلا:

  1. class Company {
  2. String domainName;
  3. public Company(){
  4. this.domainName = “default”;
  5. }
  6. public Company(String domainName){
  7. this.domainName = domainName;
  8. }
  9. public void getName(){
  10. System.out.println(this.domainName);
  11. }
  12. public static void main(String[] args) {
  13. Company defaultObj = new Company();
  14. Company programizObj = new Company(“programiz.com”);
  15. defaultObj.getName();
  16. programizObj.getName();
  17. }
  18. }

خروجی

default

programiz.com

نکات مهم

  • بلافاصله بعد از فراخوانی اشیا، سازندگان فراخوانی می شوند.
  • دو قانون ایجاد سازنده عبارتند از:
  • نام سازنده جاوا دقیقاً باید با نام کلاس مطابقت داشته باشد.
  • یک سازنده جاوا نباید دارای نوع بازگشتی باشد.
  • اگر یک کلاس سازنده نداشته باشد ، کامپایلر جاوا به طور خودکار یک سازنده پیش فرض را در زمان اجرا ایجاد می کند. سازنده پیش فرض متغیرهای نمونه را با مقادیر پیش فرض مقدار دهی اولیه می کند. به عنوان مثال: متغیر int برابر ۰ می شود.
  • انواع سازنده:
  • سازنده No-Arg – سازنده ای که هیچ آرگومانی را قبول نمی کند
  • سازنده پیش فرض – سازنده ای که بطور خودکار توسط کامپایلر جاوا ایجاد می شود. ( اگر به صراحت تعریف نشده باشد)
  • سازنده پارامتری – برای مشخص کردن مقادیر خاص متغیرها در شی استفاده می شود
  • سازندگان نمی توانند abstract یا static یا final باشند.
  • سازنده را می توان چندین بار تعریف کرد.
profile name
تیم تولید محتوا

بخندید کتاب بخونید و خوب باشید تا جامعه مون به آرامش برسه. لطفا ! هر سوالی دارید در بخش نظرات مطرح کنید. ما یا سایر هموطنان عزیز پاسخ خواهیم داد. برای کمک به سایت ما و گسترش آموزش در بین هموطنان، در سایتها، وبلاگ ها و شبکه های اجتماعی لینک سایت ما را درج کنید.

مطالب پیشنهادی برای شما

محصولات مرتبط

مشاهده همه

دیدگاهتان را بنویسید

1 2 3 4 5

1 نظر درباره «آموزش کامل سازنده ها در جاوا (به زبان ساده)»

  • ننیس
    ننیس آیا این دیدگاه مفید بود ؟

    خیر ببینید ....

    پاسخ
مشاهده همه نظرات
سبد خرید
سبد خرید شما خالی است
× جهت نصب روی دکمه زیر در گوشی کلیک نمائید
آی او اس
سپس در مرحله بعد برروی دکمه "Add To Home Screen" کلیک نمائید