English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

هل يمكنني استيراد نفس الحزمة مرتين؟ هل سيقوم JVM بتحميل الحزمة مرتين عند تشغيل التطبيق؟

در جاوا، کلاس‌ها و رابط‌های مرتبط با یکدیگر در یک بسته جمع‌آوری می‌شوند. بسته تنها یک دایرکتوری است که برای ذخیره کلاس‌ها و رابط‌های خاص مفهومی استفاده می‌شود. به عنوان مثال، تمام کلاس‌ها و رابط‌های مرتبط با عملیات ورودی و خروجی در بسته java.io ذخیره می‌شوند.

ایجاد یک بسته

تنها نیاز دارید که کلیدواژهpackageبا تعریف در بالای Class / Interface (فایل)، می‌توانید کلاس‌ها و رابط‌های مورد نیاز را در یک بسته جمع‌آوری کنیدبسته، -

مثال

package com.w3codebox.mypackage;
public class Sample{
   public void demo(){
      System.out.println("این یک روش از کلاس نمونه است");
   }
   public static void main(String args[]){
      System.out.println("Hello how are you......");
   }
}

برخلاف برنامه‌هایی که از برنامه‌های پیکربندی بسته استفاده می‌کنند، شما باید از دستور javac استفاده کنید–dگزینه‌ها برای تعیین مسیر هدف ایجاد بسته.

نتیجه خروجی

javac –d . Sample.java

اگر مسیر هدف را ذکر نکنید، بسته در مسیر فعلی ایجاد خواهد شد.

وارد کردن کلاس

برای دسترسی به کلاس‌ها و رابط‌هایی که در بسته‌های زیر گروه‌بندی شده‌اند، باید مسیر بسته را به متغیر path اضافه کنید (یا اطمینان حاصل کنید که بسته در مسیر فعلی قرار دارد) و از کلیدواژه import برای وارد کردن کلاس‌ها و رابط‌های آن استفاده کنید.

مثال

import com.w3codebox.mypackage.Sample;
public class Test{
   public static void main(String args[]){
      Sample obj = new Sample();
      obj.demo();
   }
}

نتیجه خروجی

این یک روش از کلاس نمونه است

دو بار وارد کردن یک کلاس

بله، شما می‌توانید یک کلاس را دو بار در جاوا وارد کنید، این باعث مشکلی نمی‌شود، اما، چه تعداد بار که وارد کنید، JVM تنها یک بار کلاس را بارگذاری می‌کند.

مثال

در برنامه Java زیر، ما تنها تلاش می‌کنیم تا کلاس را وارد کنیمcom.w3codebox.mypackageکلاس Sample در برنامه بسته.

import com.w3codebox.mypackage.Sample;
import com.w3codebox.mypackage.Sample;
public class Test{
   public static void main(String args[]){
      Sample obj = new Sample();
      obj.demo();
   }
}

نتیجه خروجی

کلاس نمونه بارگذاری شد
این یک روش از کلاس نمونه است