برنامه نویسی

Task-24/01/2025

تکلیف 5: روش فراخوانی، خصوصی

هدف:
روش یادگیری فراخوانی، دسترسی به متغیرهای استاتیک، غیر ایستا از کلاس های دیگر، اصلاح کننده خصوصی.
مراحل: کلاسی به نام مدرسه ایجاد کنید.
متغیرهای غیر ایستا را مانند زیر داشته باشید.
علامت int;
حقوق خصوصی خصوصی;
متغیر استاتیک را مانند زیر داشته باشید.
static String school_name = “مدرسه ابتدایی سنت آنتونی”;
روش های غیر استاتیکی که در زیر ذکر شده را تعریف کنید
void conduct_exams()

  • یک عبارت چاپی در داخل این متد داشته باشید void publish_results(int mark)
    • یک عبارت چاپی در داخل این متد داشته باشید تا علامت را چاپ کنید. حالا کلاس دیگری به نام Teacher Create main method در داخل کلاس Teacher ایجاد کنید. یک نمونه (ابجکت) برای کلاس School ایجاد کنید. [Object name -> teacher] با استفاده از شیء 'teacher'، متد conduct_exams() را فراخوانی کنید. با استفاده از شی 'teacher'، متد public_results() را فراخوانی کنید و 75 را به عنوان آرگومان در اینجا پاس کنید. چاپ school_name سعی کنید در کلاس معلم به حقوق متغیر خصوصی دسترسی داشته باشید و پیام خطا را یادداشت کنید.
package B14;

public class School {
    int mark;
    private int salary = 20000;
    static String school_name = "st antonys primary school";

    public static void main(String[] args) {
        // TODO Auto-generated method stub

    }

    void condunt_exam() {
        System.out.println("conduct exam");
    }

    void publish_result(int mark) {
        System.out.println("exam result" + mark);
    }

    public void salary() {
        System.out.println("salary" + salary);
    }
}

package B14;

public class Teacher extends School{

    public static void main(String[] args)
    {
    School teacher = new School();
    teacher.condunt_exam();
    teacher.publish_result(75);
    teacher.salary();
    System.out.println("school name"+ school_name);
    }

}


اگر روش حقوق و دستمزد را عمومی اعلام کنیم، می‌توانیم خروجی داشته باشیم، اگر روش خصوصی به این معنی است که فقط می‌توانیم در کلاس دسترسی داشته باشیم، نمی‌توانیم از کلاس دیگر دسترسی داشته باشیم.

خروجی:
برگزاری امتحان
نتیجه امتحان 75
حقوق 20000
مدرسه نام مدرسه ابتدایی آنتونیس

تکلیف 6:

هدف: یادگیری اصلاح کننده های دسترسی خصوصی، پیش فرض و عمومی، ایجاد بسته و درک استفاده از آن، فراخوانی متدها با/بدون آرگومان.

  1. بررسی کنید که آیا می توانید کلاس خصوصی ایجاد کنید
  2. بررسی کنید که آیا می توانید روش اصلی خصوصی ایجاد کنید
  3. بررسی کنید که آیا می توانید متغیر محلی Method را به عنوان خصوصی ایجاد کنید.

وظیفه:

  1. یک بسته به نام bank.chennai ایجاد کنید.
  2. یک کلاس عمومی به نام “SBI” ایجاد کنید.
  3. دارای متغیرهای غیر استاتیک پیش‌فرض String empName, empId.
  4. دارای متغیر ثابت پیش فرض branch_name=”chennai”
  5. دو متد پیش‌فرض غیراستاتیک get_loan(int مقدار)، create_account() با void به عنوان نوع داده بازگشتی ایجاد کنید.
  6. اکنون در همان بسته (bank.creditcard) یک کلاس پیش فرض دیگر به نام Account_Holder ایجاد کنید.
  7. متد اصلی را در این کلاس داشته باشید.
  8. سعی کنید در کلاس SBI به تمام متغیرهای استاتیک، غیراستاتیک و متدهای غیراستاتیک دسترسی داشته باشید.
  9. بسته دیگری به نام bank.madurai ایجاد کنید.
  10. در این پکیج کلاس پیش فرضی به نام Account_Holder_Madurai ایجاد کنید.
  11. متد اصلی را در این کلاس داشته باشید.
  12. سعی کنید در کلاس SBI به تمام متغیرهای استاتیک، غیراستاتیک و متدهای غیراستاتیک دسترسی داشته باشید.
  13. خطاها را یادداشت کنید و آن خطاها را تصحیح کنید و مطمئن شوید که این کلاس بدون هیچ خطایی خروجی می دهد.
package Bank.chennai;

public class SBI {
    public String empName = "name";
    public int empid = 32;
    public static String branchName = "chennai";

    public void get_loan(int amount) {
        System.out.println("amount" + amount);
    }

    public void create_account() {
        System.out.println("create");
    }

    public static void branch() {
        System.out.println("leave" + branchName);
    }

}
package Bank.chennai;

public class Account_Holder extends SBI{

    public static void main(String[] args) {
        // TODO Auto-generated method stub
        Account_Holder account=new Account_Holder();
        account.get_loan(10000);
        account.create_account();
        Account_Holder.branch();
        System.out.println( "empname" + account.empName);
        System.out.println("empid" + account.empid);
        System.out.println("branchName" + branchName );
    }

}

خروجی:
مبلغ 10000
ایجاد حساب کاربری
شعبه نامچنای
بطور مثال
empid32
شعبهNamechennai

بیانیه واردات در جاوا

عبارت Import در جاوا برای گرفتن یک کلاس یا همه کلاس‌های قابل مشاهده برای یک برنامه مشخص شده در یک بسته، با کمک یک دستور مفید است. این بسیار مفید است زیرا برنامه نویس نیازی به نوشتن کل تعریف کلاس ندارد. از این رو، خوانایی برنامه را بهبود می بخشد.

نحو 1:

import package1[.package2].(*);

نحو 2:

import package1[.package2].(myClass);

مرجع: https://www.geeksforgeeks.org/import-statement-in-java/

وارد شده از پکیج Bank.Chennai

package  Bank.madurai;

import Bank.chennai.SBI;

public class Account_holder_Madurai{

    public static void main(String[] args) {

    SBI acc = new SBI();
    int val = 34000;
    acc.get_loan(val);
    acc.create_account();
    SBI.branch();
    System.out.println(acc.empName);
    System.out.println(acc.empid);
    System.out.println(SBI.branchName);
    }



}

خروجی:
مبلغ 34000
ایجاد حساب کاربری
شعبه نامچنای
سوزن زدن
32
چنای

نوشته های مشابه

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

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

دکمه بازگشت به بالا