জাভাতে একটি ইন্টারফেস একটি শ্রেণীর অনুরূপ, তবে একটি ইন্টারফেসের মূল অংশে কেবল বিমূর্ত পদ্ধতি এবং
final
ক্ষেত্রগুলি (ধ্রুবক) অন্তর্ভুক্ত থাকতে পারে ।
সম্প্রতি, আমি একটি প্রশ্ন দেখেছি, যা দেখতে এটির মতো দেখাচ্ছে
interface AnInterface {
public default void myMethod() {
System.out.println("D");
}
}
ইন্টারফেস সংজ্ঞা অনুযায়ী, কেবল বিমূর্ত পদ্ধতি অনুমোদিত are এটি আমাকে উপরের কোডটি সংকলন করার অনুমতি দেয় কেন? default
কীওয়ার্ডটি কী ?
অন্যদিকে, যখন আমি কোডের নীচে লেখার চেষ্টা করছিলাম, তখন এটি বলে modifier default not allowed here
default class MyClass{
}
পরিবর্তে
class MyClass {
}
কেউ কি আমাকে default
কীওয়ার্ডের উদ্দেশ্য বলতে পারেন ? এটি কি কেবল ইন্টারফেসের মধ্যেই অনুমোদিত? এটি কীভাবে আলাদা হয় default
(অ্যাক্সেস মডিফায়ার নেই)?