কম্পিউটার

জাভাতে একটি ইন্টারফেস একাধিক ইন্টারফেস প্রসারিত করতে পারে?


জাভাতে একটি ইন্টারফেস ক্লাসের অনুরূপ কিন্তু, এতে শুধুমাত্র বিমূর্ত পদ্ধতি এবং ক্ষেত্র রয়েছে যা চূড়ান্ত এবং স্থির। ক্লাসের মতই আপনি নিচের মত extensions কীওয়ার্ড ব্যবহার করে একটি ইন্টারফেসকে অন্য থেকে প্রসারিত করতে পারেন:

interface ArithmeticCalculations {
   public abstract int addition(int a, int b);
   public abstract int subtraction(int a, int b);
}
interface MathCalculations extends ArithmeticCalculations {
   public abstract double squareRoot(int a);
   public abstract double powerOf(int a, int b);
}

একইভাবে আপনি −

হিসেবে কমা (,) ব্যবহার করে ইন্টারফেসগুলিকে আলাদা করে এক্সটেন্ডস কীওয়ার্ড ব্যবহার করে একটি ইন্টারফেস থেকে একাধিক ইন্টারফেস প্রসারিত করতে পারেন।
interface MyInterface extends ArithmeticCalculations, MathCalculations {

উদাহরণ

নিম্নলিখিত জাভা প্রোগ্রামটি প্রদর্শন করছে, কিভাবে একটি একক ইন্টারফেস থেকে একাধিক ইন্টারফেস প্রসারিত করা যায়।

import java.util.Scanner;
interface ArithmeticCalculations {
   public abstract int addition(int a, int b);
   public abstract int subtraction(int a, int b);
}
interface MathCalculations {
   public abstract double squareRoot(int a);
   public abstract double powerOf(int a, int b);
}
interface MyInterface extends MathCalculations, ArithmeticCalculations {
   public void displayResults();
}
public class ExtendingInterfaceExample implements MyInterface {
   public int addition(int a, int b) {
      return a+b;
   }
   public int subtraction(int a, int b) {
      return a-b;
   }
   public double squareRoot(int a) {
      return Math.sqrt(a);
   }
   public double powerOf(int a, int b) {
      return Math.pow(a, b);
   }
   public void displayResults() {
      Scanner sc = new Scanner(System.in);
      System.out.println("Enter the value of a: ");
      int a = sc.nextInt();
      System.out.println("Enter the value of b: ");
      int b = sc.nextInt();
      ExtendingInterfaceExample obj = new ExtendingInterfaceExample();
      System.out.println("Result of addition: "+obj.addition(a, b));
      System.out.println("Result of subtraction: "+obj.subtraction(a, b));
      System.out.println("Square root of "+a+" is: "+obj.squareRoot(a));
      System.out.println(a+"^"+b+" value is: "+obj.powerOf(a, b));
   }
   public static void main(String args[]) {
      new ExtendingInterfaceExample().displayResults();
   }
}

আউটপুট

Enter the value of a:
4
Enter the value of b:
3
Result of addition: 7
Result of subtraction: 1
Square root of 4 is: 2.0
4^3 value is: 64.0

  1. Enum জাভা কোন ক্লাস প্রসারিত করতে পারেন?

  2. Enum কি জাভাতে একটি ইন্টারফেস প্রয়োগ করতে পারে?

  3. জাভাতে একটি FocusListener ইন্টারফেসের গুরুত্ব কী?

  4. আমরা কিভাবে উত্তরাধিকার সূত্রে একাধিক পাইথন ক্লাস প্রসারিত করতে পারি?