আশা করি এটি আমার কলেজের সময় উফ (কোর জাভা) তে যা শিখেছি তা আপনাকে একটু সহায়তা করবে।
প্রয়োগগুলি ইন্টারফেসের পদ্ধতিগুলির জন্য একটি প্রয়োগকরণ সংজ্ঞায়িত করে। তবে ইন্টারফেসের কোনও প্রয়োগ নেই তাই এটি সম্ভব নয়। একটি ইন্টারফেস তবে অন্য ইন্টারফেস প্রসারিত করতে পারে যার অর্থ এটি আরও পদ্ধতি যুক্ত করতে এবং এর ধরণের উত্তরাধিকারী হতে পারে।
এখানে নীচে একটি উদাহরণ দেওয়া আছে, এটি আমার বোঝাপড়া এবং উফগুলিতে আমি কী শিখেছি।
interface ParentInterface{
void myMethod();
}
interface SubInterface extends ParentInterface{
void anotherMethod();
}
এবং মনে মনে একটি জিনিস রাখুন একটি ইন্টারফেস কেবল অন্য ইন্টারফেসকে প্রসারিত করতে পারে এবং আপনি যদি এটি কোনও শ্রেণীর উপর এটির কার্যকারিতা নির্ধারণ করতে চান তবে কেবলমাত্র একটি ইন্টারফেস বাস্তবায়িত যেমন নীচে
public interface Dog
{
public boolean Barks();
public boolean isGoldenRetriever();
}
এখন, কোনও শ্রেণি যদি এই ইন্টারফেসটি প্রয়োগ করে, তবে এটি দেখতে এটির মতো হবে:
public class SomeClass implements Dog
{
public boolean Barks{
// method definition here
}
public boolean isGoldenRetriever{
// method definition here
}
}
এবং যদি কোনও বিমূর্ত শ্রেণীর কিছু বিমূর্ত ফাংশন সংজ্ঞায়িত করা এবং ঘোষণা করা হয় এবং আপনি সেই ফাংশনটি সংজ্ঞায়িত করতে চান বা আপনি এই ফাংশনটি বাস্তবায়ন করতে বলতে পারেন তবে আপনি অনুমিত হন যে শ্রেণিটি প্রসারিত হবে কারণ কেবল বিমূর্ত শ্রেণিটিই বাড়ানো যেতে পারে। এখানে নীচে উদাহরণ।
public abstract class MyAbstractClass {
public abstract void abstractMethod();
}
এখানে MyAbstractClass এর একটি উদাহরণ উপক্লাস রয়েছে:
public class MySubClass extends MyAbstractClass {
public void abstractMethod() {
System.out.println("My method implementation");
}
}