কম্পিউটার

অবজেক্ট ক্লাস কেন জাভাতে সমস্ত ক্লাসের জন্য সুপার ক্লাস?


Java.lang.Object ৷ ক্লাস হল ক্লাস হায়ারার্কির মূল বা সুপারক্লাস, যা java.lang প্যাকেজে উপস্থিত . সমস্ত পূর্বনির্ধারিত শ্রেণী এবং ব্যবহারকারী-সংজ্ঞায়িত শ্রেণী হল অবজেক্ট থেকে উপশ্রেণী ক্লাস।

কেন অবজেক্ট ক্লাস একটি সুপারক্লাস

পুনরায় ব্যবহারযোগ্যতা

  • প্রতিটি বস্তুর 11টি সাধারণ বৈশিষ্ট্য রয়েছে, এই বৈশিষ্ট্যগুলি অবশ্যই প্রতিটি জাভা বিকাশকারীকে প্রয়োগ করতে হবে৷
  • ডেভেলপারের উপর বোঝা কমাতে SUN 11টি পদ্ধতিতে এই সমস্ত 11টি বৈশিষ্ট্য প্রয়োগ করে অবজেক্ট নামে একটি ক্লাস তৈরি করেছে৷
  • এই সমস্ত পদ্ধতিতে সমস্ত সাবক্লাসের জন্য সাধারণ যুক্তি রয়েছে, যদি এই যুক্তিটি সাবক্লাসের প্রয়োজনীয়তাকে সন্তুষ্ট না করে তাহলে সাবক্লাস এটিকে ওভাররাইড করতে পারে

রানটাইম পলিমরফিজম

  • রানটাইম পলিমরফিজম অর্জন করতে যাতে আমরা আর্গুমেন্ট এবং রিটার্ন টাইপ হিসাবে যেকোনো ধরনের ক্লাস অবজেক্ট গ্রহণ এবং পাঠাতে একটি একক পদ্ধতি লিখতে পারি।

প্রতিটি ক্লাস অবজেক্টের সাধারণ কার্যকারিতা

দুটি বস্তুর তুলনা

  • পাবলিক বুলিয়ান সমান(বস্তু বস্তু)

হ্যাশকোড পুনরুদ্ধার করা হচ্ছে

  • পাবলিক int হ্যাশকোড()

রান টাইম ক্লাস অবজেক্ট রেফারেন্স পুনরুদ্ধার করা হচ্ছে

  • পাবলিক ফাইনাল ক্লাস getClass()

স্ট্রিং ফর্ম্যাটে অবজেক্ট তথ্য পুনরুদ্ধার করা হচ্ছে

  • পাবলিক স্ট্রিং toString()

ক্লোনিং অবজেক্ট

  • সুরক্ষিত অবজেক্ট ক্লোন() CloneNotSupportedException নিক্ষেপ করে

অবজেক্ট ক্লিন-আপ কোড/ রিসার্স রিলিজিং কোড

  • সুরক্ষিত অকার্যকর চূড়ান্তকরণ() থ্রোয়েবল থ্রোয়েবল

বর্তমান থ্রেডের জন্য অপেক্ষা করতে যতক্ষণ না অন্য একটি থ্রেড বিজ্ঞপ্তি () আহ্বান করে

  • সর্বজনীন চূড়ান্ত বাতিল অপেক্ষা() InterruptedException নিক্ষেপ করে

বর্তমান থ্রেডের জন্য অপেক্ষা করার জন্য যতক্ষণ না অন্য একটি থ্রেড নোটিফাই() একটি নির্দিষ্ট সময়ের জন্য অনুরোধ করে

  • সর্বজনীন চূড়ান্ত অকার্যকর প্রতীক্ষা (দীর্ঘ সময়সীমা) বাধাপ্রাপ্ত ব্যতিক্রম নিক্ষেপ করে

বর্তমান থ্রেডের জন্য অপেক্ষা করার জন্য যতক্ষণ না অন্য একটি থ্রেড নোটিফাই() একটি নির্দিষ্ট সময়ের জন্য অনুরোধ করে

  • সর্বজনীন চূড়ান্ত অকার্যকর অপেক্ষা (দীর্ঘ সময় শেষ, int ন্যানো) InterruptedException নিক্ষেপ করে

ওয়েটিং থ্রেডে অবজেক্ট লক উপলব্ধতা সম্পর্কে অবহিত করুন

  • সর্বজনীন চূড়ান্ত বাতিল বিজ্ঞপ্তি()

ওয়েটিং থ্রেডগুলিতে অবজেক্ট লক উপলব্ধতা সম্পর্কে অবহিত করুন

  • সর্বজনীন চূড়ান্ত বাতিল নোটিফাইঅল()

উদাহরণ

class Thing extends Object implements Cloneable {
   public String id;
   public Object clone() throws CloneNotSupportedException {
      return super.clone();
   }
   public boolean equals(Object obj) {
      boolean result = false;
      if ((obj!=null) && obj instanceof Thing) {
         Thing t = (Thing) obj;
         if (id.equals(t.id)) result = true;
      }
      return result;
   }
   public int hashCode() {
      return id.hashCode();
   }
   public String toString() {
      return "This is: "+id;
   }
}
public class Test {
   public static void main(String args[]) throws Exception {
      Thing t1 = new Thing(), t2;
      t1.id = "Raj";
      t2 = t1; // t1 == t2 and t1.equals(t2)
      t2 = (Thing) t1.clone(); // t2!=t1 but t1.equals(t2)
      t2.id = "Adithya"; // t2!=t1 and !t1.equals(t2)
      Object obj = t2;
      System.out.println(obj); //Thing = Adithya
   }
}

আউটপুট

This is: Adithya

  1. জাভা 9-এ @অপ্রচলিত টীকা-এর উন্নতি কী?

  2. জাভাতে মেইন () মেথড সবসময় স্ট্যাটিক থাকে কেন?

  3. কনস্ট্রাক্টরের নাম জাভাতে ক্লাসের নামের মতো কেন?

  4. জাভাতে সুপার কীওয়ার্ড