ترتيب تنفيذ ضمانات المعلمات في جافا؟
-
18-09-2019 - |
سؤال
نظرا لاستدعاء الوظيفة التالية C
:
fooFunc( barFunc(), bazFunc() );
ترتيب تنفيذ barFunc
و BazFunc
غير محدد، لذلك barFunc()
قد يتم استدعاؤها من قبل bazFunc()
أو bazFunc()
قبل barFunc()
في C
.
هل Java
حدد ترتيب تنفيذ تعبيرات وسيطة الوظيفة أو مثل C
هل هذا غير محدد؟
المحلول
من مواصفات لغة Java. (على التعبيرات):
15.7.4 يتم تقييم قوائم الحجة من اليسار إلى اليمين
في طريقة أو استدعاء منشئ أو تعبير إنشاء مثيل فئة، قد تظهر تعبيرات الوسيطة داخل الأقواس، مفصولة بفواصل. يبدو أن تعبير حجة يتم تقييمه بالكامل قبل أي جزء من أي تعبير حجة إلى حقه.
لا تنتمي إلى StackOverflow