"إذا أراد العامل أن يؤدي عمله بشكل جيد، فعليه أولاً أن يشحذ أدواته." - كونفوشيوس، "مختارات كونفوشيوس. لو لينجونج"
الصفحة الأمامية > برمجة > ما الذي تفعله الكلمة الرئيسية "الأصلية" في Java ومتى يجب عليك استخدامها؟

ما الذي تفعله الكلمة الرئيسية "الأصلية" في Java ومتى يجب عليك استخدامها؟

تم النشر بتاريخ 2025-01-16
تصفح:781

What Does Java\'s `native` Keyword Do and When Should You Use It?

ما هي الكلمة الرئيسية الأصلية في Java؟

تسمح لك الكلمة الأساسية الأصلية في Java باستدعاء المكتبات المجمعة والمحملة ديناميكيًا والمكتوبة بلغات مثل C أو C مع رمز تجميع عشوائي من داخل Java. يمكّنك هذا من الوصول إلى وظائف المستوى الأدنى التي قد لا تكون متوفرة في Java خالصة.

كيف يعمل

لاستخدام التعليمات البرمجية الأصلية في Java، عليك القيام بذلك ما يلي:

    إنشاء ملف رأس (.h) يحتوي على نماذج الوظائف للطرق الأصلية التي تريد الاتصال بها.
  1. تنفيذ الطرق الأصلية في ملف مصدر (.c أو .cpp).
  2. قم بتجميع التعليمات البرمجية الأصلية في مكتبة مشتركة (.so على Linux، .dll على Windows).
  3. تحميل المكتبة المشتركة إلى Java الخاص بك برنامج يستخدم System.loadLibrary().
  4. استخدم الأساليب الأصلية مثل أي Java أخرى

مثال

فيما يلي مثال بسيط لفئة Java التي تستدعي طريقة أصلية مكتوبة في C:

فئة عامة مثال { مربع int الأصلي العام (int i) ؛ public static void main(String[] args) { System.loadLibrary("مثال"); System.out.println(new example().square(2)); }
public class Example {
    public native int square(int i);
    public static void main(String[] args) {
        System.loadLibrary("Example");
        System.out.println(new Example().square(2));
    }
}
رمز C المقابل:

#include JNIEXPORT جينت JNICALL Java_Example_square( JNIEnv *env، jobject obj، jint i) { العودة أنا * أنا؛
#include 
JNIEXPORT jint JNICALL Java_Example_square(
    JNIEnv *env, jobject obj, jint i) {
  return i * i;
}

فوائد استخدام الكود الأصلي

يمكن أن يوفر استخدام الكود الأصلي العديد من الفوائد، بما في ذلك:

  • زيادة الأداء: غالبًا ما تكون التعليمات البرمجية الأصلية أسرع من تعليمات Java البرمجية، حيث يمكنها الوصول مباشرة إلى موارد الأجهزة.
  • الوصول إلى نظام منخفض المستوى الوظيفة: يمكن للتعليمات البرمجية الأصلية أداء المهام غير الممكنة في Java الخالصة، مثل التفاعل مع نظام التشغيل أو الوصول إلى الأجهزة.
  • قابلية النقل: يمكن تجميع التعليمات البرمجية الأصلية من أجل منصات متعددة، مما يجعل من السهل نشر التطبيق الخاص بك عبر أنظمة مختلفة.
الاعتبارات

أثناء استخدام اللغة الأصلية يمكن أن تكون التعليمات البرمجية مفيدة، ولكنها تأتي أيضًا مع بعض الاعتبارات:

    زيادة التعقيد:
  • يمكن أن يكون تطوير التعليمات البرمجية الأصلية والحفاظ عليها أكثر تعقيدًا من استخدام Java النقي.
  • إمكانية نقل أقل:
  • يتم تجميع التعليمات البرمجية الأصلية لمنصة معينة، مما يحد من إمكانية نقلها.
  • الأمان المخاطر:
  • تتطلب كتابة التعليمات البرمجية الأصلية فهمًا عميقًا للنظام الأساسي الأساسي، ويمكن أن تؤدي ممارسات البرمجة غير الصحيحة إلى مخاطر أمنية.
أحدث البرنامج التعليمي أكثر>

تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.

Copyright© 2022 湘ICP备2022001581号-3