خلال مرحلة التحليل الدلالي، يظهر هذا النوع من الأخطاء. يتم الكشف عن هذه الأنواع من الأخطاء في وقت الترجمة.
تم فرز قائمة صفيف جافا
معظم أخطاء وقت الترجمة هي خطأ في النطاق والإعلان. على سبيل المثال: معرفات غير معلنة أو متعددة. النوع غير المتطابق هو خطأ آخر في وقت الترجمة.
يمكن أن ينشأ الخطأ الدلالي باستخدام متغير خاطئ أو استخدام عامل خاطئ أو إجراء عملية بترتيب خاطئ.
بعض الأخطاء الدلالية يمكن أن تكون:
- أنواع المعاملات غير المتوافقة
- متغير غير معلن
- عدم مطابقة الحجة الفعلية مع الحجة الرسمية
مثال 1: استخدام متغير غير مهيأ:
int i; void f (int m) { m=t; }
في هذا الكود، t غير معلن ولهذا السبب يظهر الخطأ الدلالي.
مثال 2: نوع عدم التوافق:
int a = 'hello'; // the types String and int are not compatible
مثال 3: أخطاء في التعبيرات:
String s = '...'; int a = 5 - s; // the - operator does not support arguments of type String