یک برنامه جاوا بنویسید که یک کلاس ساده Person با فیلدهای name و age تعریف کند، یک لیست از اشیاء Person را در فایل با استفاده از سریالسازی ذخیره کند و سپس آنها را از فایل خوانده و روی صفحه چاپ کند.
7.0 بازدید آخرین ویرایش در 220 روز قبل ساعت 02:20 0.0
برای حل: کلاس Person را با پیادهسازی رابط Serializable تعریف کنید (ترجیحاً serialVersionUID مشخص کنید)، سپس یک ArrayList از اشیاء Person بسازید و آن را با ObjectOutputStream به فایل بنویسید؛ برای خواندن از ObjectInputStream استفاده کنید و خروجی را با تبدیل نوع مناسب (cast) به ArrayList بازیابی کرده و چاپ کنید. نکات: از try-with-resources برای بستن خودکار استریمها استفاده کنید، استثناهای IOException و ClassNotFoundException را مدیریت کنید و به جای نوشتن تکتک اشیاء میتوانید کل لیست را یکجا بنویسید/خواند تا کار سادهتر شود؛ برای خواندن در حلقه نیز میتوانید EOFException را کنترل کنید.
1 پاسخ
جدید ترین قدیمی ترین بالاترین امتیاز پاسخ های من
در حال بارگیری...
برای ارسال پاسخ باید با حساب کاربری وارد شوید.
ورود به حساب کاربری
نکته مفید اینکه اگر کل لیست را با یک writeObject بنویسید، هنگام خواندن هم فقط باید از readObject استفاده کنید و لیست را به ArrayList<Person> cast کنید. حتماً serialVersionUID برای کلاس Person تعریف شود تا در تغییرات بعدی سازگاری حفظ شود. استفاده از try-with-resources برای استریمها باعث جلوگیری از نشت منابع میشود. همچنین پیادهسازی متد toString در Person، به چاپ واضحتر و سریعتر لیست اشیاء کمک میکند.
گزارش