لماذا "pm.newquery (amployee.class)" وليس "pm.newquery (الموظف)" في JDO؟
سؤال
في هذا JDO ، لماذا .class
مطلوب هنا؟
Query averageSalaryQuery = pm.newQuery(Employee.class);
أفضل أن أكتب هذا بناء الجملة أكثر إيجازًا إن أمكن؟
Query averageSalaryQuery = pm.newQuery(Employee);
المحلول
Query averageSalaryQuery = pm.newQuery(Employee);
حسنًا ، لا يزال يجب أن يكون جافا صالحًا ، وهو ما سبق ليس ...
طريقة الإشارة إلى فصل في جافا هي استخدام .class
بناء الجملة.
نصائح أخرى
إن استخدام لاحقة ".class" هي اتفاقية للغة ، لذلك فإن مثالك الثاني غير صالح بشكل دلالي. لا شيء يمكنك فعله حيال ذلك حقًا. إنها تعادل استدعاء getClass()
طريقة على مثيل للصف ، مثل:
Query averageSalaryQuery = pm.newQuery(new Employee().getClass())
لذلك هو بالفعل اختصار ؛)
لا تنتمي إلى StackOverflow