جافا: عملية إنشاء الكائنات وتهيئة
1. أنواع البيانات في جافا
هناك 3 أنواع بيانات في Java: أنواع البيانات الأساسية (في Java ، Boolean ، Byte ، Short ، int ، Long ، Char ، Float ، ومزدوج من أنواع البيانات الأساسية) ، ونوع المرجع والنوع الفارغ. من بينها ، يتضمن النوع المرجعي نوع الفئة (بما في ذلك الصفيف) ونوع الواجهة.
يعلن البيان التالي بعض المتغيرات:
int k ؛ a a ؛ // A هو اسم متغير الكائن لنوع البيانات. B B1 ، B2 ، ... ، B10000 ؛ // افترض أن B عبارة عن فئة أو واجهة مجردة. سلسلة S ؛
ملاحظة: من منظور أنواع البيانات والمتغيرات ، فإن متغيرات نوع البيانات الأساسية K ، ومتغيرات نوع الفئة A و S ، فئة مجردة أو متغير نوع الواجهة B (10000) ، كلها متغيرات (معرفات).
2. حول المقبض
للتمييز بين المعرفات المتغيرة لأنواع المرجع والمعرفات المتغيرة لنوع البيانات الأساسية ، نستخدم على وجه التحديد مقبض لتسمية معرفات متغيرة لأنواع المراجع. في المثال أعلاه ، يتم التعامل مع B1 إلى B10000 و A و S. مقبض ينظر بشكل حدسي إلى المقبض والمقبض. نستخدم الترجمة الصينية الشائعة الاستخدام لـ "المقبض" في عالم الكمبيوتر.
2.1 [في برمجة Windows] معنى المقبض هو عدد صحيح فريد تستخدمه Wondows لتحديد الكائنات التي تم إنشاؤها أو استخدامها بواسطة تطبيق ما. يستخدم Windows مقابض مختلفة لتحديد مثل مثيلات التطبيق ، ويندوز ، وعناصر التحكم ، ونقطات النقطة ، وكائنات GDI ، وما إلى ذلك. يشبه مقبض Windows إلى حد ما مقبض الملف بلغة C.
من التعريف أعلاه ، يمكننا أن نرى أن المقبض هو معرف يستخدم لتحديد كائن أو مشروع. إنه مثل اسمنا. سيكون لكل شخص واحدة. الأشخاص المختلفين لديهم أسماء مختلفة ، ولكن قد يكون هناك أيضًا شخص يحمل نفس الاسم مثلك. من نوع البيانات ، هو مجرد عدد صحيح 16 بت غير موقعة. يحصل التطبيق دائمًا على مقبض دائمًا عن طريق استدعاء وظيفة Windows ، والتي يمكن استخدامها بعد ذلك بواسطة وظائف Windows الأخرى للإشارة إلى الكائن المقابل.
إذا كنت تريد معرفة المقابض بشكل أكثر شمولية ، يمكنني أن أخبرك أن المقابض هي مؤشرات للمؤشرات. نحن نعلم أن ما يسمى المؤشر هو عنوان ذاكرة. بعد بدء تشغيل التطبيق ، توجد الكائنات التي تشكل البرنامج في الذاكرة. إذا فهمنا ذلك ببساطة ، فيبدو أنه طالما أننا نعرف العنوان الأول لهذه الذاكرة ، فيمكننا استخدام هذا العنوان للوصول إلى الكائن في أي وقت. ولكن إذا كنت تعتقد ذلك حقًا ، فأنت مخطئ جدًا. نحن نعلم أن Windows هو نظام تشغيل افتراضي قائم على الذاكرة. في بيئة النظام هذه ، غالبًا ما ينقل Windows Memory Manager الكائنات ذهابًا وإيابًا في الذاكرة لتلبية احتياجات الذاكرة من التطبيقات المختلفة. يتم نقل كائن يعني أن عنوانه قد تغير. إذا كان العنوان يتغير دائمًا مثل هذا ، فأين يجب أن نجد الكائن؟
لحل هذه المشكلة ، يحرر نظام تشغيل Windows بعض عناوين التخزين الداخلية لكل تطبيق لتسجيل تغييرات العنوان لكل كائن تطبيق في الذاكرة ، ويظل هذا العنوان (موقع وحدة التخزين) نفسه دون تغيير. بعد تحريك موقع الكائن في الذاكرة ، يروي مدير ذاكرة Windows العنوان الجديد للكائن لحفظه. وبهذه الطريقة ، نحتاج فقط إلى تذكر عنوان المقبض هذا لمعرفة مكان وجود الكائن بشكل غير مباشر في الذاكرة. يتم تعيين هذا العنوان بواسطة النظام عند تحميل الكائن (تحميل) ، ويتم إصداره إلى النظام عند تفريغ النظام.
عنوان المعالجة (مستقر) → سجل عنوان الكائن في الذاكرة ─ عنوان الكائن في الذاكرة (غير مستقر) → كائن فعلي
2.2 معنى المقابض في Java له فهم عميق لمعنى المقابض [في برمجة Windows]. يمكننا أن نقول أن المقبض هو مصطلح نحتاجه كثيرًا عند تعلم Java. يتمثل معناها في التمييز بين "الكائن نفسه" عن متغيرات الكائن (أو الصرامة: معرفات متغيرة لنوع البيانات الذي ينتمي إليه الكائن).
2.3 العودة إلى الإعلان المتغير في 1:
الآن ، يجب أن يكون لديك عرض واضح للتعليقات أدناه.
int k ، j ؛ // k يخزن رقم عدد صحيح. أ ؛ // يتم تخزين العنوان في. B B1 ، B2 ، ... ، B10000 ؛ // B1 ، ... ، B10000 يخزن العنوان في الداخل. سلسلة S ؛ // S يخزن العنوان.
3. حول المرجع
ما هو "الاقتباس"؟ "المعرف الذي تتلاعب به هو في الواقع" مرجع "لكائن". (التفكير في جافا 2E)
الترجمة هي: المعرف الذي تتلاعب به هو في الواقع "مرجع" لكائن. أو أن تكون أكثر دقة ، تُرجم إلى: المعرف الذي تديره هو في الواقع "مرجع" لكائن. من الواضح أن المرجع في النص الأصلي هو شيء بشعور من الاتجاه.
ارجع إلى Java ورجع إلى رقم معرف الكائن أو معرف الكائن أو رقم الهاتف المحمول للكائن. بالطبع ، أكثر من القول هو أن المرجع هو رقم الغرفة حيث يعيش الكائن في الذاكرة. من الناحية حدسي ، فإن الإشارة إلى كائن هي قيمة الإرجاع عند إنشاء كائن! المرجع هو قيمة إرجاع التعبير الجديد.
جديد A () ؛ فيما يلي كائن ، لكننا لا نستخدم مقبضًا للاحتفاظ (Hold ، Hold ، Save) المرجع. من منظور مجهري ، يكمل التعبير الجديد مهمة تهيئة الكائن (ثلاث خطوات ، تحليل مفصل أدناه) ، وعموما ، يعيد مرجعًا.
عد إلى الإعلان المتغير في 1 مرة أخرى وألقي نظرة على التعليقات أدناه.
أ ؛ // إعلان التعامل مع A ، ولكن لم يتم تهيئته ، وبالتالي فإن القيمة في الداخل خالية. B B1 ، B2 ، ... ، B10000 ؛ // DECLARE HANDLES B1 ، ... ، B10000 ، ولكن لم يتم تهيئتها ، وبالتالي فإن القيمة في الداخل خالية. سلسلة S ؛ .
4. العلاقة بين المقبض والمرجع
A ؛ // DECLARE HANDARE A ، القيمة هي nulla = new a () ؛ // تهيئة المقبض (handle = مرجع ؛ أي ، تعيين المرجع إلى المقبض)
اقتباس: قيمة جديدة A (). يمكن اعتبار المراجع ببساطة العنوان الذي يحتل فيه الكائن مساحة الذاكرة ؛ من خلال الإشارات إلى الكائنات ، يمكن تمييزها بسهولة عن كائنات أخرى ، والمراجع هي الهوية الفريدة للكائن.
بعد تهيئة المقبض ، يمكنك استخدام المقبض للتحكم في الكائن عن بُعد.
بالطبع ، هذا فقط لشرح إنشاء وتهيئة الكائنات من جانب واحد. بعد فهم العلاقة بين المقابض والمراجع ، يتم تحليل عملية تهيئة الكائن بأكملها أدناه. دعنا نفعل الاستعدادات التالية أولاً ، نتحدث عن Stack and Stack.
5. كومة وكومة في جافا
في Java ، تنقسم الذاكرة إلى نوعين: "Stack" و "Cheap" (Stack and Chep). يتم تخزين نوع البيانات الأساسية في "المكدس" ، ويتم تخزين نوع مرجع الكائن فعليًا في "الكومة" ، ويتم الاحتفاظ بقيمة العنوان للذاكرة المرجعية فقط في المكدس.
بالمناسبة ، دعنا نتحدث عن أساليب "==" و "متساوٍ ()" للمساعدة في فهم مفهوم كلاهما (المكدس والكومة).
عند مقارنة المتغيرات مع "==" في Java ، يستخدم النظام القيمة المخزنة في المتغير في المكدس كأساس للمقارنة. القيمة المخزنة في نوع البيانات الأساسية في المكدس هي قيمة الاحتواء ، والقيمة المخزنة في نوع المرجع في المكدس هي قيمة العنوان للكائن نفسه إلى. تحتوي فئة الكائن في حزمة Java.lang على طريقة منطقية عامة (Object OBJ). يقارن ما إذا كان كائنين متساوين. تُرجع طريقة equals () للكائن صحيحًا فقط إذا كانت المرجعتين تتم مقارنتها نقطة نفس الكائن (المقابض متساوية). (أما بالنسبة لطريقة متساوية () لفئة السلسلة ، فإنه يتجاوز طريقة متساوية () ولا تتم مناقشته في هذه المقالة.)
6. إنشاء الكائن وعملية التهيئة
في جافا كائن هو مثيل للفئة. بشكل عام ، عندما يتم نسخ مثيل لفئة ما ، يتم نسخ جميع أعضاء مثل هذه الفئة ، بما في ذلك المتغيرات والأساليب ، في مثيل جديد من نوع البيانات هذا. تحليل الرموز التالية.
6.1 مركبة VEHT1 = مركبة جديدة () ؛
البيان أعلاه يفعل ما يلي:
① يستخدم "السيارة الجديدة" على اليمين فئة السيارة كقالب لإنشاء كائن فئة مركبة (يشار إليه أيضًا باسم كائن مركبة) في مساحة الكومة.
② نهاية () تعني أنه بعد إنشاء الكائن ، يتم استدعاء مُنشئ فئة السيارة على الفور لتهيئة الكائن الذي تم إنشاؤه حديثًا. يجب أن يكون هناك مُنشئ. إذا لم يتم إنشاؤه ، فسيضيف Java مُنشئًا افتراضيًا.
③ "مركبة VEHT1" على اليسار تنشئ متغير مرجعي فئة السيارة.
④ يجعل المشغل "=" نقطة مرجع الكائن إلى كائن السيارة الذي تم إنشاؤه للتو. (استدعاء المقابض والمراجع)
قسّم البيان أعلاه إلى خطوتين:
مركبة Veh1 ؛ ear1 = مركبة جديدة () ؛
من الواضح أن تكتب بهذه الطريقة. هناك كيانان: أحدهما هو متغير مرجع الكائن ، والآخر هو الكائن نفسه. تختلف الكيانات التي تم إنشاؤها في مساحة الكومة عن تلك التي تم إنشاؤها في مساحة المكدس. على الرغم من أنها كيانات موجودة ، يبدو من الصعب "التقاطها" بدقة. دعنا ندرس الجملة الثانية بعناية واكتشف اسم الكائن الذي أنشأته للتو؟ بعض الناس يقولون إنه يسمى "السيارة". لا ، "السيارة" هو اسم الفصل (قالب الإنشاء للكائن). يمكن لفئة السيارة إنشاء كائنات لا حصر لها بناءً على هذا ، ولا يمكن تسمية هذه الكائنات "مركبة". الكائن لا يحتوي حتى على اسم ، لذلك لا يمكن الوصول إليه مباشرة. يمكننا فقط الوصول إلى الكائنات بشكل غير مباشر من خلال مراجع الكائن.
6.2 مركبة Veh2 ؛
VEH2 = QUE1 ؛
نظرًا لأن VEHT1 و VEHR2 هي مجرد إشارات إلى الأشياء ، فإن ما يفعله السطر الثاني هو فقط تعيين المرجع (العنوان) من VEH1 إلى VEH2 ، بحيث يشير VEH1 و VEH2 إلى كائن السيارة الفريد في نفس الوقت.
6.3 Veh2 = New Moster () ؛
يشير المتغير المرجعي VEH2 إلى الكائن الثاني بدلاً من ذلك.
استنتاج من البيان أعلاه ، يمكننا استخلاص الاستنتاج التالي: ① يمكن أن يشير مرجع الكائن إلى كائن 0 أو 1 ؛ ② يمكن أن يكون للكائن إشارات ن تشير إليه.
جافا: تحويل نوع البيانات
1. أنواع بسيطة من جافا وفئات التغليف الخاصة بها
1.1 أنواع Java Simple and Classulation ، نعلم أن لغة Java هي لغة برمجة نموذجية موجهة نحو الكائن ، ولكن بالنظر إلى مزايا بعض أنواع البيانات الأساسية البسيطة في البنية ، والذاكرة الصغيرة وسرعة الوصول السريع ، لا تزال Java توفر الدعم لأنواع البيانات البسيطة غير الموجه. بالطبع ، عندما توفر Java عددًا كبيرًا من الفئات الأخرى ، فإنه يوفر أيضًا فئات مغلفة تتوافق مع أنواع البيانات البسيطة. لذلك ، لدى Java أنواع بيانات مختلفة مثل int و integer (تعويم وتعويم ، مزدوجة ومزدوجة ...).
هناك فئتان رئيسيتان من أنواع البيانات في لغة Java: إحداهما نوع بسيط ، يُعرف أيضًا باسم النوع الرئيسي (البدائي) ، والآخر هو نوع مرجعي (مرجع). يخزن متغير النوع البسيط قيمة محددة ، بينما يخزن متغير نوع المرجع مرجعًا إلى كائن.
تحدد Java حجم كل نوع بسيط. هذه الأحجام لا تتغير مع التغييرات في بنية الماكينة. هذا الحجم ثابت ، وهو أحد الأسباب التي تجعل برامج Java لديها قابلية نقل قوية.
يسرد الجدول التالي الأنواع البسيطة ، وشغل البتات الثنائية وفئات التغليف المقابلة المحددة في Java.
أنواع بسيطة في الجدول جافا
1.2 لماذا استخدام فئات التغليف. خذ int و integer كمثال. على الرغم من أنها تمثل بشكل أساسي عدد صحيح 32 بت ، إلا أنها أنواع بيانات مختلفة. في الواقع ، فإن الأعداد الصحيحة المستخدمة مباشرة في Java هي INT (بقدر ما يتعلق الأمر بـ INT و INTEGER). فقط عندما يجب أن تظهر البيانات كهوية الكائن ، يجب تغليف قيمة عدد صحيح في كائن مع intege algulator ، int المقابلة.
على سبيل المثال: لإضافة عدد صحيح إلى المتجه في حزمة java.util ، يجب تغليف قيمة عدد صحيح في مثيل عدد صحيح كما يلي:
Vector V = New Vector () ؛ int k = 121 ؛ v.addelemt (عدد صحيح جديد (k)) ؛
بالإضافة إلى ذلك ، يوفر عدد صحيح ، حيث يوفر فئة alsapulator المقابلة لـ Int ، العديد من الطرق ، مثل طرق إنشاء عدد صحيح ، وطرق تحويل عدد صحيح إلى الأنواع العددية الأخرى ، وما إلى ذلك ، والتي لا تتوفر في بيانات النوع int.
2. الثوابت في جافا
نحن بحاجة إلى الانتباه إلى الأنواع التالية من الثوابت.
2.1 عندما يتم التعبير عن ثوابت عدد صحيح سداسي عشري في السداسي عشرية ، يجب أن تبدأ بـ 0x أو 0x ، مثل 0xff ، 0x9a.
2.2 يجب أن تبدأ الثمن العدد الثابت الثامن مع 0 ، مثل 0123 ، 034.
2.3 يجب أن ينتهي النوع الطويل من النوع الطويل بـ L ، مثل 9L ، 342L.
2.4 ثوابت تعويم نظرًا لأن النوع الافتراضي للثابت العشري هو النوع المزدوج ، يجب إضافة F (F) بعد نوع التعويم. المتغيرات مع الكسور العشرية هي أيضا من النوع المزدوج افتراضيا.
تعويم و ؛
f = 1.3f ؛ // f يجب إعلانها.
2.5 ثوابت الحرف ، يجب أن تكون ثوابت الأحرف مرفقة في اثنين من اقتباس واحد (لاحظ أن ثوابت السلسلة محاطة في اثنين من اقتباس مزدوج). الأحرف في جافا حساب بايت اثنين.
بعض شخصيات الهروب شائعة الاستخدام.
①/r يعني قبول إدخال لوحة المفاتيح ، وهو ما يعادل الضغط على مفتاح Enter ؛
②/n يعني خط جديد.
③/T يمثل حرف TAB ، وهو ما يعادل مفتاح الجدول ؛
④/B يمثل مفتاح Space Backspace ، وهو ما يعادل مفتاح الفضاء الخلفي ؛
⑤/'يعني اقتباسات واحدة ؛
⑥/'' يعني اقتباسات مزدوجة.
⑦ // يعني Slash/.
3. التحويل بين أنواع البيانات البسيطة
هناك طريقتان للتحويل بين أنواع البيانات البسيطة: التحويل التلقائي والتحويل المصبوب ، والذي يحدث عادةً عند تمرير معلمات التعبير أو الطريقة.
3.1 التحويل التلقائي على وجه التحديد ، عندما يتم حساب البيانات "الصغيرة" مع بيانات "كبيرة" ، سيقوم النظام تلقائيًا بتحويل البيانات "الصغيرة" إلى بيانات "كبيرة" ثم تنفيذ الحساب. عند استدعاء الطريقة ، تكون المعلمات الفعلية "صغيرة" وبيانات المعلمة الرسمية للطريقة التي تسمى "كبيرة" (إذا كانت هناك تطابق ، بالطبع ، سيتم استدعاء طريقة المطابقة مباشرة) ، وسيقوم النظام تلقائيًا بتحويل البيانات "الصغيرة" إلى بيانات "كبيرة" ، ثم استدعاء الطريقة. وبطبيعة الحال ، للحصول على طرق متعددة محملة من نفس الاسم ، سيتم تحويلها إلى بيانات "إغلاق" "كبيرة" واتصل بها.
هذه الأنواع من "Small" إلى "Big" هي (بايت ، شورت ، شار)-دولة طويلة. ما نتحدث عنه هنا لا يشير إلى عدد البايتات المحتلة ، ولكن إلى حجم النطاق الذي يمثل القيمة.
يرجى الاطلاع على المثال التالي:
① يمكن تمرير البيانات التالية مباشرة في جافا:
byte b ؛ int i = b ؛ long l = b ؛ float f = b ؛ double d = b ؛
② إذا كان النوع المنخفض المستوى هو نوع char ، فسيتم تحويله إلى قيمة رمز ASCII المقابلة عند التحويل إلى نوع عالي المستوى (نوع متكامل) ، على سبيل المثال
char c = 'c' ؛ int i = c ؛ System.out.println ("الإخراج:"+i) ؛
الإخراج:
الإخراج: 99 ؛
③ بالنسبة للأنواع الثلاثة للبايت ، القصير ، والشار ، فهي أفقية ، لذلك لا يمكنهم تحويل بعضها البعض تلقائيًا. يمكن استخدام تحويل نوع الممثلين التالي.
قصير i = 99 ؛ char c = (char) i ؛ system.out.println ("الإخراج:"+c) ؛الإخراج:
الإخراج: ج ؛
④ إذا كانت هناك طريقة في تعدد الأشكال:
f (byte x) {...} ؛ f (Short x) {...} ؛ f (int x) {...} ؛ f (long x) {...} ؛ f (float x) {... هناك أيضًا: char y = 'a' ؛ إذن ، ما هي الطريقة التي ستتصل بها العبارة F (y)؟ الجواب هو: F (int x) {...} ، لأن المعلمة المرجعية الرسمية "كبيرة" وهي "الإغلاق".
وللأسلوب:
f (float x) {...} ؛ f (double x) {...} ؛ هناك أيضًا: طويل Y = 123L ؛ ثم ، الطريقة التي تسمى البيان f (y) هي f (float x) {...}.
3.2 الصب عند تحويل البيانات "الكبيرة" إلى بيانات "صغيرة" ، يمكنك استخدام الصب. وهذا هو ، يجب عليك استخدام تنسيق العبارة التالية:
int n = (int) 3.14159/2 ؛
كما يمكنك أن تتخيل ، قد يؤدي هذا التحويل بالتأكيد إلى فائض أو انخفاض في الدقة.
3.3 تعزيز نوع بيانات التعبير تلقائيًا. فيما يتعلق بالتحسين التلقائي للنوع ، انتبه إلى القواعد التالية.
① سيتم الترويج لجميع قيم البايت والاختصار و char إلى نوع int ؛
② إذا كان هناك معامل طويل ، فإن نتيجة الحساب طويلة ؛
③ إذا كان هناك معامل هو نوع تعويم ، فإن نتيجة الحساب هي نوع تعويم ؛
④ إذا كان هناك عامل مزدوج ، فإن نتيجة الحساب هي النوع المزدوج ؛
مثال،
بايت ب ؛ ب = 3 ؛ B = (بايت) (B*3) ؛ // يجب الإعلان عن البايت.
3.4 تحويل نوع الانتقال إلى فئة التغليف بشكل عام ، نعلن أولاً متغيرًا ثم ننشئ فئة عبوة مقابلة ، ويمكننا استخدام طرق مختلفة لفئة التغليف لإجراء تحويل النوع. على سبيل المثال:
① عندما تريد تحويل الطفو إلى نوع مزدوج:
تعويم F1 = 100.00F ؛ تعويم F1 = تعويم جديد (F1) ؛ Double D1 = f1.doublevalue () ؛ // f1.doublevalue () هي طريقة إرجاع نوع القيمة المزدوجة لفئة العائمة
② عندما تريد تحويل النوع المزدوج إلى نوع int:
Double D1 = 100.00 ؛ Double D1 = New Double (D1) ؛ int i1 = d1.IntValue () ؛
تحويل متغيرات الأنواع البسيطة إلى فئة التفاف المقابلة ، ويمكن استخدام مُنشئ فئة التفاف. وهذا هو: منطقية (قيمة منطقية) ، الحرف (قيمة char) ، عدد صحيح (قيمة int) ، طويلة (قيمة طويلة) ، تعويم (قيمة تعويم) ، مزدوجة (قيمة مزدوجة)
في كل فئة من فئة التغليف ، هناك دائمًا طريقة × القيمة () للحصول على بيانات النوع البسيط المقابل. باستخدام هذه الطريقة ، يمكن أيضًا تحقيق التحويل بين المتغيرات العددية المختلفة. على سبيل المثال ، بالنسبة لفئة من النوع الحقيقي المزدوج ، يمكن لـ Intvalue () الحصول على متغير عدد صحيح المقابل ، ويمكن أن تحصل على متغير من النوع الحقيقي المزدوج.
4. التحويل بين السلاسل والأنواع الأخرى
4.1 تحويل الأنواع الأخرى إلى السلاسل ① استدعاء طريقة تحويل السلسلة للفئة: X.ToString () ؛
التحويل الآلي: x+"؛
③ الطرق باستخدام السلسلة: string.volueof (x) ؛
4.2 قم بتحويل السلسلة إلى أنواع أخرى كقيم ① قم أولاً بتحويلها إلى مثيل Wrapper المقابل ، ثم اتصل بالطريقة المقابلة لتحويلها إلى أنواع أخرى. على سبيل المثال ، تنسيق تحويل قيمة النوع المزدوج لـ "32.1" في الحرف هو: New Float ("32.1"). doublevalue (). يمكنك أيضًا استخدام: double.valueof ("32.1"). doublevalue ()
② طريقة parsexxx ثابتة
سلسلة s = "1" ؛ byte b = byte.parsebyte (s) ؛ قصيرة t = قصيرة. parseshort (s) long l = long.parselong (s) ؛ float f = float.parsefloat (s) ؛ double d = double.parsedouble (s) ؛
③ يمكن العثور على طريقة GetNumericValue (Char CH) في API.
5. تحويل فئة التاريخ وأنواع البيانات الأخرى
لا توجد مراسلات مباشرة بين الأعداد الصحيحة ودروس التاريخ ، ولكن يمكنك استخدام نوع int لتمثيل السنة والشهر واليوم والدقيقة والثواني على التوالي ، بحيث يتم إنشاء المراسلات بين الاثنين. عند القيام بهذا التحويل ، يمكنك استخدام ثلاثة أشكال من مُنشئ فئة التاريخ:
①date (int year ، int month ، int date): يمثل نوع int السنة والشهر واليوم (int year ، int month ، int date ، int hrs ، int min): int type يمثل العام ، الشهر ، ساعة ، ودقيقة ③ دقيقة ، ودقيقة ، ودقيقة ، و int int ، int min ، int sec). يتم التعبير عن الفصول الدراسية ، أي الوقت على أنها عدد المللي ثانية من الساعة 0:00:00 ، بتوقيت جرينتش في 1 يناير 1970. بالنسبة لهذه المراسلات ، تحتوي فئة التاريخ أيضًا على مُنشئها المقابل: التاريخ (التاريخ الطويل).
احصل على العام والشهر واليوم والساعة والدقيقة والثانية والأسبوع في فئة التاريخ. يمكنك استخدام getyear () ، getMonth () ، getDate () ، gethours () ، getMinutes () ، getSeconds () ، getDay () ، ويمكنك أيضًا فهمها على أنها تحويل فئة التاريخ إلى int.
يمكن أن تحصل طريقة GetTime () على فئة التاريخ على رقم عدد صحيح طويل المقابل للوقت الذي ذكرناه سابقًا. مثل فئة Wrapper ، تحتوي فئة التاريخ أيضًا على طريقة ToString () يمكنها تحويلها إلى فئة السلسلة.
في بعض الأحيان نريد الحصول على شكل محدد من التاريخ ، على سبيل المثال 20020324 ، يمكننا استخدام الطريقة التالية ، أولا تقديمه في بداية الملف ،
استيراد java.text.simpleDateFormat ؛ استيراد java.util.*؛ java.util.date date = new java.util.date () ؛ // إذا كنت ترغب في الحصول على تنسيق yyyymmdd simpledateformat sy1 = جديد simpledateFormat ("Yyyymmdd") ؛ String DateFormat = sy1.format (Date) ؛ // إذا كنت ترغب في الحصول على سنة ، شهر ، اليوم ، simpletformat sy = جديد spimdateformat ("yyyyy") ؛ SimplEdateFormat SM = جديد spiStFormat ("mm") ؛ SimplEdateFormat SD = جديد spiStFormat ("dd") ؛ String syear = sy.format (date) ؛ String smon = sm.format (date) ؛ String sday = sd.format (date) ؛