JavaRush /جاوا بلاگ /Random-SD /ڪلاسن جو تعارف: پنهنجا طبقا لکڻ، تعمير ڪندڙ

ڪلاسن جو تعارف: پنهنجا طبقا لکڻ، تعمير ڪندڙ

گروپ ۾ شايع ٿيل
سلام! اڄ اسان جاوا ۾ ڪلاس بابت ڳالهائينداسين. ڪلاسز کي جاوا پروگرامنگ جو مرڪز چئي سگھجي ٿو. جڏهن توهان هڪ پروگرامر بڻجي ويندا آهيو، توهان جو بنيادي ڪم اهو هوندو ته توهان پنهنجي ڪلاس کي مختلف ڪارڪردگي سان لکو. ڪلاسن جو تعارف: پنهنجا طبقا لکڻ، تعمير ڪندڙ - 1اچو ته سمجهون ته هي شيءِ ڇا آهي ۽ اهو ڪيئن ڪم ڪري ٿو :) جيئن توهان اڳ ۾ ئي ڄاڻو ٿا، جاوا هڪ اعتراض تي مبني پروگرامنگ ٻولي آهي. سڀني پروگرامن تي مشتمل آهي شيون جيڪي ڪنهن نه ڪنهن طرح سان ڳنڍيل آهن. ڪلاس بنيادي طور تي ڪنهن شئي لاءِ هڪ ٽيمپليٽ آهي. اهو طئي ڪري ٿو ته هڪ شئي ڪيئن نظر ايندي ۽ ان جا ڪهڙا ڪم هوندا. هر شئي ڪنهن نه ڪنهن طبقي جو اعتراض آهي . اچو ته آسان ترين مثال ڏسو:
public class Cat {

    String name;
    int age;

}
اچو ته چئون ته اسان هڪ پروگرام لکي رهيا آهيون، ۽ هن پروگرام ۾ اسان کي ڪنهن شيءِ لاءِ ٻلين جي ضرورت آهي (مثال طور، اسان وٽ هڪ ويٽرنري ڪلينڪ آهي جنهن ۾ آن لائن ملاقات ڪرڻ جي صلاحيت آهي). اسان هڪ ڪلاس ٺاهيو Cat۽ ان لاءِ ٻه متغير بيان ڪيا - هڪ اسٽرنگ name۽ هڪ نمبر age. اهڙن طبقاتي متغيرن کي فيلڊس چئبو آهي . لازمي طور تي، هي هڪ ٽيمپليٽ آهي سڀني ٻلين لاءِ جيڪو اسان مستقبل ۾ ٺاهينداسين. هر ٻلي (طبقاتي اعتراض Cat) ۾ ٻه متغير هوندا - نالو ۽ عمر.
public class Cat {

    String name;
    int age;

    public static void main(String[] args) {
        Cat barsik = new Cat();
        barsik.age = 3;
        barsik.name = "Barsik";

        System.out.println("We created a cat named" + barsik.name + ", his age - " + barsik.age);
    }

}
اهو ڪيئن ڪم ڪري ٿو! اسان هڪ ٻلي ٺاهي، ان کي نالو ۽ عمر ڏني، ۽ اهو سڀ ڪجهه ڪنسول ڏانهن وڌايو. ڪجھ به پيچيده ناهي :) ڪلاس اڪثر ڪري آس پاس جي دنيا جي شين ۽ واقعن کي بيان ڪن ٿا. هڪ ٻلي، هڪ ٽيبل، هڪ شخص، روشني، هڪ ڪتاب جو صفحو، هڪ ڦيٿي - هي سڀ توهان جي پروگرام ۾ الڳ ڪلاس استعمال ڪندي ٺاهي ويندي. ھاڻي اچو ته ڪلاس ۾ ٺاھيل متغيرن تي ھڪ نظر وجهون Cat. انهن کي سڏيو ويندو آهي فيلڊ، يا مثال متغير . نالو، حقيقت ۾، انهن جي سڄي ذات کي ظاهر ڪري ٿو. ڪلاس جي هر مثال (آبجڪٽ) ۾ اهي متغير هوندا Cat. nameاسان جي ٺاهيل هر ٻلي جو پنهنجو متغير ۽ پنهنجو هوندو age. اهو منطقي آهي، عام طور تي: حقيقي ٻلين سان سڀ ڪجهه ساڳيو آهي :) مثال جي متغيرن کان علاوه، ٻيا به آهن - طبقاتي متغير ، يا جامد آهن. اچو ته اسان جي مثال ۾ شامل ڪريو:
public class Cat {

    String name;
    int age;

    static int count = 0;

    public static void main(String[] args) {
        Cat barsik = new Cat();
        barsik.age = 3;
        barsik.name = "Barsik";
        count++;

        Cat vasia = new Cat();
        vasia.age = 5;
        vasia.name = "Vasya";
        count++;

        System.out.println("We created a cat named" + barsik.name + ", his age - " + barsik.age);
        System.out.println("We created a cat named" + vasia.name + ", his age - " + vasia.age);

        System.out.println("Total number of cats = " + count);
    }
}
ڪنسول آئوٽ:

Мы создали кота по имени Барсик, его возраст - 3
Мы создали кота по имени Вася, его возраст - 5
Общее количество котов = 2
هاڻي اسان وٽ اسان جي طبقي ۾ هڪ نئون متغير آهي - count(مقدار). هوءَ پيدا ٿيل ٻچن کي ڳڻڻ جي ذميوار آهي. هر دفعي جڏهن اسان مکيه طريقي سان هڪ ٻلي ٺاهيندا آهيون، اسان هن متغير کي 1 وڌائيندا آهيون. هي متغير جامد لفظ جي ترتيب سان ٺهيل آهي . هن جو مطلب اهو آهي ته اهو طبقي سان تعلق رکي ٿو ، ۽ طبقي جي مخصوص اعتراض سان نه. جيڪو، يقينا، منطقي آهي: جيڪڏهن هر ٻلي جو پنهنجو نالو هجڻ گهرجي، پوء اسان کي سڀني لاء هڪ ٻلي انسداد جي ضرورت آهي. اھو بلڪل اھو آھي جيڪو لفظ جامد توھان کي حاصل ڪرڻ جي اجازت ڏئي ٿو - countساڳيو متغير سڀني ڪتن لاءِ. مهرباني ڪري نوٽ ڪريو: جڏهن اسان ان کي ڪنسول تي پرنٽ ڪندا آهيون، اسان نه لکندا آهيون barsik.countيا vasia.count. هوءَ ڪنهن به بارسڪ يا واسيءَ سان واسطو نه رکي ٿي- هوءَ پوري طبقي سان تعلق رکي ٿي Cat. تنهن ڪري، اهو سادو آهي count. توهان پڻ لکي سگهو ٿا Cat.count- اهو پڻ صحيح ٿيندو. nameاهو ڪم نه ڪندو کنسول ڏانهن هڪ متغير ڪڍڻ سان :
public class Cat {

    String name;
    int age;

    static int count = 0;

    public static void main(String[] args) {
        Cat barsik = new Cat();
        barsik.age = 3;
        barsik.name = "Barsik";
        count++;

        System.out.println("We created a cat named" + name + ", his age - " + barsik.age);

        System.out.println("Total number of cats = " + count);
    }
}
غلطي! nameهر ٻلي پنهنجي پنهنجي آهي. هي اهو آهي جتي مرتب ڪندڙ پريشان ٿي ويندو آهي. "ڪنسول ڏانهن نالو ڪڍيو؟ نالو ڪنهن جو آهي؟ :/"

طريقا

متغيرن کان علاوه، هر طبقي جا طريقا آهن. اسان انهن بابت وڌيڪ تفصيل سان هڪ الڳ ليڪچر ۾ ڳالهائينداسين، پر عام نقطا بلڪل سادو آهن. طريقا توهان جي طبقي جي ڪارڪردگي آهن. هن طبقي جا ڪهڙا شيون ڪري سگهن ٿا. توھان اڳ ۾ ئي ھڪڙي طريقن سان واقف آھيو - ھي آھي main(). پر طريقو main، جيئن توهان کي ياد آهي، جامد آهي - اهو آهي، اهو سڄي طبقي سان تعلق رکي ٿو (منطق ساڳيو آهي جيئن متغير سان). ۽ عام، غير جامد طريقن کي صرف مخصوص شين تي سڏي سگهجي ٿو جيڪي اسان ٺاهيا آهن. مثال طور، جيڪڏهن اسان ٻلي لاءِ ڪلاس لکڻ چاهيون ٿا، ته اسان کي اهو سمجهڻ گهرجي ته ٻلي کي اسان جي پروگرام ۾ ڪهڙا ڪم ڪرڻ گهرجن. ان جي بنياد تي، اچو ته ان لاءِ ڪجھ طريقا لکون:
public class Cat {

    String name;
    int age;

    public void sayMeow() {
        System.out.println("Meow!");
    }

    public void jump() {
        System.out.println("Jumping gallop!");
    }

    public static void main(String[] args) {
        Cat barsik = new Cat();
        barsik.age = 3;
        barsik.name = "Barsik";

        barsik.sayMeow();
        barsik.jump();

    }
}
خير، هاڻي اسان جو ڪلاس تمام گهڻو آهي هڪ حقيقي ٻلي جي وضاحت وانگر! هاڻي اسان وٽ صرف هڪ ٻلي ناهي جنهن کي نالو ۽ عمر سان بارسڪ سڏيو ويندو آهي. هو ميون ۽ ٽپو به ڏئي سگهي ٿو! اهڙي ”ڪارڪردگي“ کان سواءِ ڪهڙي قسم جي ٻلي آهي :) اسان هڪ خاص شئي وٺون ٿا - barsik۽ ان جي طريقن کي سڏين ٿا sayMeow()۽ jump(). اسان ڪنسول کي ڏسون ٿا:

Мяу!
Прыг-скок!
هڪ حقيقي ٻلي! :)

پنهنجون ڪلاسون ٺاهڻ. خلاصو

مستقبل ۾ توهان کي پنهنجو ڪلاس لکڻو پوندو. انهن کي لکڻ وقت توهان کي ڇا ڌيان ڏيڻ گهرجي؟ جيڪڏهن اسان متغير جي باري ۾ ڳالهائي رهيا آهيون، توهان کي ڪجهه استعمال ڪرڻ جي ضرورت آهي جنهن کي تجزيه سڏيو ويندو آهي . Abstraction اعتراض تي مبني پروگرامنگ جي چئن بنيادي اصولن مان هڪ آهي. ان ۾ نمايان ڪرڻ شامل آھي ھڪڙي اعتراض جي مکيه، سڀ کان وڌيڪ اھم خصوصيتون ، ۽ ان جي برعڪس - ثانوي، غير معمولي کي رد ڪرڻ. مثال طور، اسان ڪمپني جي ملازمن جو هڪ فائيل ٺاهي رهيا آهيون. ملازم شيون ٺاهڻ لاء، اسان هڪ ڪلاس لکيو Employee. ڪمپني فائل ۾ ملازم کي بيان ڪرڻ لاءِ ڪهڙا خاصيتون اهم آهن؟ پورو نالو، ڄمڻ جي تاريخ، سماجي سيڪيورٽي نمبر، ٽيڪس سڃاڻپ نمبر. پر اهو ممڪن ناهي ته اسان کي ڪمپني جي ملازم جي ڪارڊ ۾ سندس قد، اکين ۽ وارن جو رنگ هجي. ڪمپني کي هن معلومات جي ضرورت ناهي. تنهن ڪري، ڪلاس لاءِ Employeeاسين متغير مقرر ڪنداسين String name, int age۽ , ۽ اسان ان معلومات کي ڇڏي ڏينداسين جيڪا اسان لاءِ غير ضروري آهي (جهڙوڪ اکين جو رنگ) ۽ int socialInsuranceNumberان کي ختم ڪري ڇڏينداسين . پر جيڪڏهن اسان هڪ ماڊلنگ ايجنسي لاء فوٽو ماڊل جو هڪ فائيل ٺاهي، صورتحال ڊرامي طور تبديل ٿي. فيشن جي ماڊل کي بيان ڪرڻ لاء، قد، اکين جو رنگ ۽ وارن جو رنگ اسان لاء تمام ضروري آهي، پر TIN نمبر اسان لاء بلڪل ضروري ناهي. تنهن ڪري، ڪلاس ۾ اسان کي variables ٺاهڻ جي ضرورت آهي , . هي ڪيئن تجريد ڪم ڪندو آهي، اهو سادو آهي! :) int taxNumberModelint heightString hairString eyes

ٺاھيندڙ

اچو ته اسان جي ٻلي جي مثال ڏانهن واپس وڃو.
public class Cat {

    String name;
    int age;

    public static void main(String[] args) {
        Cat barsik = new Cat();

        System.out.println("Something has been happening in the program for 2 hours...");

        barsik.age = 3;
        barsik.name = "Barsik";

    }
}
هن ڪوڊ کي ڏسو ۽ اندازو لڳائڻ جي ڪوشش ڪريو ته اسان جي پروگرام ۾ ڇا غلط آهي. ٻن ڪلاڪن تائين اسان جي پروگرام ۾ هڪ ٻلي هئي جنهن جو نالو يا عمر ناهي! يقينا، اهو مڪمل طور تي غلط آهي. جانورن جي ڪلينڪ جي ڊيٽابيس ۾ ڪابه ٻلي نه هجڻ گهرجي، انهن جي باري ۾ معلومات کان سواء. هاڻي اسان ان کي پروگرامر تي ڇڏي ڏيو. جيڪڏهن هو پنهنجو نالو ۽ عمر ظاهر ڪرڻ نه وساريو، سڀ ڪجهه ٺيڪ ٿي ويندو. جيڪڏهن هو وساري ڇڏيندو، ڊيٽابيس ۾ هڪ غلطي هوندي، اڻڄاتل ڪيٽس. اسان هن مسئلي کي ڪيئن حل ڪري سگهون ٿا؟ اهو ضروري آهي ته ڪنهن به نالي ۽ عمر کان سواء ٻلين جي پيدائش کي روڪيو وڃي. هي آهي جتي تعمير ڪندڙ ڪم اسان جي مدد لاء ايندا آهن . هتي هڪ مثال آهي:
public class Cat {

    String name;
    int age;

    //constructor for class Cat
    public Cat(String name, int age) {
        this.name = name;
        this.age = age;
    }

    public static void main(String[] args) {

        Cat barsik = new Cat("Barsik", 5);
    }
}
هڪ تعمير ڪندڙ بنيادي طور تي طبقاتي شين لاء هڪ ٽيمپليٽ آهي. انهي صورت ۾، اسان بيان ڪريون ٿا ته هر اعتراض لاء catٻه دليل بيان ڪيا وڃن - هڪ تار ۽ هڪ نمبر. جيڪڏهن اسان هاڻي هڪ بي نام ٻلي پيدا ڪرڻ جي ڪوشش ڪئي، اسان ڪامياب نه ڪنداسين.
public class Cat {

    String name;
    int age;

    public Cat(String name, int age) {
        this.name = name;
        this.age = age;
    }

    public static void main(String[] args) {

        Cat barsik = new Cat(); //error!
    }
}
هاڻي ته هڪ ڪلاس ۾ هڪ ڪنسٽرڪٽر آهي، جاوا ڪمپيلر ڄاڻي ٿو ته ڪهڙيون شيون ڏسڻ گهرجن ۽ ان ۾ بيان ڪيل دليلن کان سواءِ شيون ٺاهڻ جي اجازت نه ڏين. ھاڻي اچو ته ڏسو ڪي لفظ thisجيڪو توھان ٺاھيندڙ اندر ڏسندا آھيو. هن سان گڏ سڀ ڪجهه سادو آهي. ”هي“ انگريزيءَ ۾ معنيٰ ”هي، هي“. يعني هي لفظ هڪ خاص شئي ڏانهن اشارو ڪري ٿو. ٺاھيندڙ ۾ ڪوڊ
public Cat(String name, int age) {
    this.name = name;
    this.age = age;
}
تقريبا لفظي ترجمو ڪري سگهجي ٿو: " هن ٻلي جو نالو (جيڪو اسان ٺاهي رهيا آهيون) = نالو جو دليل جيڪو تعمير ڪندڙ ۾ بيان ڪيو ويو آهي. هن ٻلي جي عمر (جيڪو اسان ٺاهي رهيا آهيون) = عمر جو دليل جيڪو تعمير ڪندڙ ۾ بيان ڪيو ويو آهي." تعمير ڪندڙ فائر ڪرڻ کان پوء، توهان چيڪ ڪري سگهو ٿا ته اسان جي ٻلي کي تمام ضروري قدر مقرر ڪيو ويو آهي:
public class Cat {

    String name;
    int age;

    public Cat(String name, int age) {
        this.name = name;
        this.age = age;
    }

    public static void main(String[] args) {

        Cat barsik = new Cat("Barsik", 5);
        System.out.println(barsik.name);
        System.out.println(barsik.age);
    }
}
ڪنسول آئوٽ:

Барсик
5
جڏهن تعمير ڪندڙ مڪمل ڪيو آهي:
Cat barsik = new Cat("Barsik", 5);
هيٺيان واقعا اندر ٿيا:
this.name = "Barsik";
this.age = 5;
۽ اعتراض barsik(اهو آهي this) مقرر ڪيو ويو قدر تعمير ڪندڙ دليلن مان. حقيقت ۾، جيڪڏهن توهان ڪلاس ۾ تعمير ڪندڙن جي وضاحت نه ڪندا، اهو اڃا تائين تعمير ڪندڙ کي باهه ڏيندو ! پر اهو ڪيئن ممڪن آهي؟ O_O حقيقت اها آهي ته جاوا ۾ سڀني طبقن کي هڪ نام نهاد ڊفالٽ تعمير ڪندڙ آهي . ان ۾ ڪو به دليل نه آهي، پر اهو هر وقت باهه ڏئي ٿو جڏهن ڪنهن به طبقي جو ڪو اعتراض پيدا ٿئي ٿو.
public class Cat {

    public static void main(String[] args) {

        Cat barsik = new Cat(); //this is where the default constructor worked
    }
}
پهرين نظر ۾ اهو قابل ذڪر نه آهي. خير، اسان هڪ اعتراض ٺاهيو ۽ ان کي ٺاهيو، ڊزائنر جو ڪم ڪٿي آهي؟ ان کي ڏسڻ لاءِ اچو ته Catپنهنجي هٿن سان ڪلاس لاءِ هڪ خالي ڪنسٽرڪٽر لکون، ۽ ان جي اندر اسان ڪنسول ۾ ڪجهه جملا ڪڍينداسين. جيڪڏھن اھو ڏيکاريو ويو آھي، پوء ٺاھيندڙ ڪم ڪيو آھي.
public class Cat {

    public Cat() {
        System.out.println("Created a cat!");
    }

    public static void main(String[] args) {

        Cat barsik = new Cat(); //this is where the default constructor worked
    }
}
ڪنسول آئوٽ:

Создали кота!
هتي جي تصديق آهي. ڊفالٽ تعمير ڪندڙ هميشه توهان جي ڪلاس ۾ پوشيده طور تي موجود آهي. پر توهان کي ان جي هڪ وڌيڪ خاصيت ڄاڻڻ جي ضرورت آهي. ڊفالٽ تعمير ڪندڙ ڪلاس مان غائب ٿي ويندو آهي جڏهن توهان دليلن سان ڪجهه تعمير ڪندڙ ٺاهيندا آهيو. ان جو ثبوت، حقيقت ۾، اسان اڳ ۾ ئي مٿي ڏٺو آهي. هتي هن ڪوڊ ۾:
public class Cat {

    String name;
    int age;

    public Cat(String name, int age) {
        this.name = name;
        this.age = age;
    }

    public static void main(String[] args) {

        Cat barsik = new Cat(); //error!
    }
}
اسان نالي ۽ عمر کان سواءِ ٻلي ٺاهي نه سگهياسين ڇاڪاڻ ته اسان هڪ تعمير ڪندڙ جي وضاحت ڪئي آهي Cat: string + number. ڊفالٽ تعمير ڪندڙ هن کان فوري طور تي ڪلاس مان غائب ٿي ويو. تنهن ڪري، ياد رکڻ جي پڪ ڪريو: جيڪڏهن توهان کي پنهنجي ڪلاس ۾ ڪيترن ئي تعمير ڪندڙن جي ضرورت آهي، بشمول هڪ خالي، توهان کي ان کي الڳ ڪرڻ جي ضرورت آهي . مثال طور، اسان جي جانورن جي ڪلينڪ چڱا ڪم ڪرڻ ۽ بي گهر ٻلين جي مدد ڪرڻ چاهي ٿي، جن جا نالا ۽ عمر اسان کي خبر ناهي. پوء اسان جو ڪوڊ هن طرح ڏسڻ گهرجي:
public class Cat {

    String name;
    int age;

    //for domestic cats
    public Cat(String name, int age) {
        this.name = name;
        this.age = age;
    }

    //for street cats
    public Cat() {
    }

    public static void main(String[] args) {

        Cat barsik = new Cat("Barsik", 5);
        Cat streetCat = new Cat();
    }
}
ھاڻي ته اسان واضح طور تي ھڪڙي ڊفالٽ ٺاھيندڙ کي بيان ڪيو آھي، اسان ٺاھي سگھون ٿا ٻن قسمن جا ڪيٽ. تعمير ڪندڙ ۾، توھان واضح طور تي قدر تفويض ڪري سگھو ٿا، ۽ نه رڳو انھن کي دليلن کان وٺي. مثال طور، اسان سڀني اسٽريٽ ٻلين کي ڊيٽابيس ۾ رڪارڊ ڪري سگھون ٿا "اسٽريٽ ٻلي نمبر..." جي نالي هيٺ:
public class Cat {

    String name;
    int age;

    static int count = 0;

    public Cat() {
        count++;
        this.name = "Street cat number" + count;
    }

    public Cat(String name, int age) {
        this.name = name;
        this.age = age;
    }

    public static void main(String[] args) {

        Cat streetCat1 = new Cat();
        Cat streetCat2 = new Cat();
        System.out.println(streetCat1.name);
        System.out.println(streetCat2.name);
    }
}
اسان وٽ ھڪڙو متغير آھي countجيڪو ھڪڙو اسٽريٽ ڪيٽ انسداد آھي. هر دفعي جڏهن اسان ڊفالٽ تعمير ڪندڙ کي هلائيندا آهيون، اسان ان کي 1 وڌائيندا آهيون ۽ انهي نمبر کي ٻلي جي نالي سان تفويض ڪندا آهيون. هڪ تعمير ڪندڙ لاء، دليلن جو حڪم تمام ضروري آهي. اچو ته اسان جي تعمير ڪندڙ ۾ نالو ۽ عمر جي دليلن کي تبديل ڪريون.
public class Cat {

    String name;
    int age;

    public Cat(int age, String name) {
        this.name = name;
        this.age = age;
    }

    public static void main(String[] args) {

        Cat barsik = new Cat("Barsik", 10); //error!
    }
}
غلطي! تعمير ڪندڙ واضح طور تي بيان ڪري ٿو: جڏهن هڪ اعتراض ٺاهي، ان کي هڪ نمبر ۽ اسٽرنگCat پاس ڪيو وڃي ، انهي ترتيب ۾ . ان ڪري اسان جو ڪوڊ ڪم نٿو ڪري. هن کي ياد رکڻ جي پڪ ڪريو ۽ هن کي ذهن ۾ رکو جڏهن توهان جا پنهنجا ڪلاس ٺاهي رهيا آهن:
public Cat(String name, int age) {
    this.name = name;
    this.age = age;
}

public Cat(int age, String name) {
    this.age = age;
    this.name = name;
}
اهي ٻه مڪمل طور تي مختلف ڊزائنر آهن! ھاڻي مواد کي مضبوط ڪرڻ لاء ڪجھ مسئلا حل ڪريو :)
  • قديم آثارن جو عجائب گھر.
توهان جو ڪم ڪلاس کي ترتيب ڏيڻ آهي Artifact. ميوزيم ۾ رکيل نوادرات ٽن قسمن جا آهن. پهريون اهو آهي جنهن بابت ميوزيم پاران ڏنل سيريل نمبر کانسواءِ ٻيو ڪجهه به معلوم ناهي (مثال طور: 212121). ٻيو اهو آهي جنهن بابت سيريل نمبر ۽ ڪلچر جنهن جي ذريعي اهو ٺاهيو ويو آهي معلوم ٿئي ٿو (مثال طور: 212121، "Aztecs"). ٽيون قسم اهو آهي جنهن بابت سيريل نمبر ڄاڻايل آهي، ثقافت جنهن جي ذريعي اهو ٺاهيو ويو آهي، ۽ ان جي ٺهڻ جي صحيح عمر (مثال طور: 212121، "Aztecs"، 12). ھڪڙو ڪلاس ٺاھيو Artifactجيڪو عجائب گھر ۾ ذخيرو ٿيل نوادرات کي بيان ڪري، ۽ ان لاء ٺاھيندڙن جو گھربل تعداد لکو. طريقي ۾ main()، هر قسم جي ھڪڙي نموني ٺاھيو.
public class Artifact {

    public static void main(String[] args) {
    }
}
  • ملاقات جي ويب سائيٽ
توھان ٺاھي رھيا آھيو صارف ڊيٽابيس لاءِ تاريخن جي سائيٽ. پر مسئلو اهو آهي ته توهان وساري ڇڏيو آهي ته ڪهڙي ترتيب ۾ انهن کي بيان ڪرڻ جي ضرورت آهي، ۽ توهان وٽ ٽيڪنيڪل وضاحتون هٿ ۾ نه آهن. ھڪڙو ڪلاس ٺاھيو Userجنھن ۾ فيلڊ ھوندو - نالو ( String)، عمر ( short) ۽ اونچائي ( int). ان لاءِ گھربل تعداد ٺاھيندڙ ٺاھيو ته جيئن نالو، عمر ۽ قد ڪنھن ترتيب سان بيان ڪري سگھجي.
public class User {

    String name;
    short age;
    int height;

    public static void main(String[] args) {

    }
}
تبصرا
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION