الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

ما معنى أن تكون لغة جافا ديناميكية؟

بدأه PHP 2 JAVA في 18 مايو 2009 · 4 رد · 1,370 مشاهدة · في JavaSE
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

مرحباً

ما معنى أن تكون لغة جافا ديناميكية؟ وهذه من مميزات اللغة

#2

ماذا تعني ب"ديناميكية"؟؟

#3

اتقصد أنها Dynamic Type ؟؟

ان كنت تقصد ذلك .. فهي ليست كذلك

بل هي strong type language

أي انه عند تعريف الـ x = 5;

لا بد من ذكر ان الـ x هو integer

لتصبح كذلك .. int x = 5;

علي عكس لغة مثل الـ python

فهي Dynamic type وكذلك الـ ruby

صــفــر

#4

أنظر: http://www.roseindia.net/java/java-introdu...-features.shtml

من مميزات جافا:

Dynamic

While executing the java program the user can get the required files dynamically from a local drive or from a computer thousands of miles away from the user just by connecting with the Internet.

أتمنى الرد ممن يعرف الإجابة.

#5

أعتقد أنه يقصد امكانيه تحميل كود جافا في ال JVM وتشغيله ضمن برنامجك دون أن تعرف عنه أي شيء أو تعرف عنه القليل:

   class NetworkClassLoader extends ClassLoader {
		 String host;
		 int port;

		 public Class findClass(String name) {
			 byte[] b = loadClassData(name);
			 return defineClass(name, b, 0, b.length);
		 }

		 private byte[] loadClassData(String name) {
			 // load the class data from the connection
			  . . .
		 }
	 }

 ClassLoader loader = new NetworkClassLoader(host, port);
   Object main = loader.loadClass("Main", true).newInstance();

في المثال السبق يمكنك تحميل class من الشبكه وانشاء object من هذا ال class دون أن يكون موجود في برنامجك الأصلي أي أن تقوم بعمليه Dynamic Linking at Runtime .

وهذا مثال أخر يوضح كيف يمكنك تحميل Plugins موجوده في الجار يمكن أن يكتبها أي شخص ويتم ربطها في برنامجك:

 URL[] jarFiles = findAllJars();

		if(jarFiles != null)

			classLoader = URLClassLoader.newInstance(jarFiles)

   public static void load(String p)

	throws ClassNotFoundException, InstantiationException, 

	IllegalAccessException{

		Class c = classLoader.loadClass(p);

		Plugin plug = (Plugin) c.newInstance();

	}

تم تعديل هذه المشاركة بواسطة muqawem في 19 مايو 2009 في 22:16

مواضيع مشابهة