Categories
OOP Programming Language

Interface OOP

ইন্টারফেস হলো একটি ক্লাসের যা অন্ন্য ক্লস কে  ইন্ট্রাকশন দেয়

ইন্টারফেস কে এক্সটেন্ট করা যায়না ।এর ভিতরে বডি লিখবনা । কিন্তু যে নিউ ক্লাস টা লিখব এর ভিতরে বডি লিখব,

ক্লাস অন্ন্য একটি বারানো হলো এসক্সটানশন , ইন্টারফেস হলো তার মেথড দারা অন্য ক্লাস কে ইন্ট্রাকশন দেয়

 

 ইন্টারফেস এমন একটি পদ্ধতি যা অন্য একটি ক্লাসের মাধ্যমে implement করা যায় ।

 ইন্টারফেস একটি ক্লাসের মতই শুধু এই দুটির মধ্যে পার্থক্য হচ্ছে ক্লাস কে যেভাবে ব্যবহার করা যায় ইন্টারফেস সেই ভাবে ব্যবহার করা যায় না। ইন্টারফেস ক্লাসের মাধ্যমে ইমপ্লিমেন্ট করে ইউজ করতে হয় । এবং তাকে সরাসরি অবজেক্ট নিউ দারা  কিংবা তার ভিতরে কোন ফাংশন ডিক্লেয়ার করা যাবে না। সেখানে ফাংশন গুলো কে একটি ফরমেট আকারে রেখে দিতে হবে যা পরবর্তীতে কোন একটি ক্লাসের ধারা কল করে ব্যবহার করতে হবে।

অর্থাৎ ইন্টারফেস এর ভিতরে কোন ফাংশন কল করা যাবে না তাকে ব্ল্যাংক বা একটি নির্দ্রিষ্ট ফরম্যাট করে রেখে দিতে হবে পরবর্তীতে কোন একটি ক্লাসের ইউজ করার জন্য। তার ভিতরে মেথদ গুলোকে কল করাতে হবে .

 

এটা কে একটি উদাহারন সহ আলোচনা করাগেলে বুঝাযাবে ।

 

এখানে Animal  হচ্ছে interface যেখানে একটি Animal এর কমন কিছু মেথড বানিয়ে রাখা হয়েছে বা লিখে রাখা হয়েছে কারণ এগুলো কে পরবর্তীতে আমরা কোন implements এর মাধ্যমে একটি ক্লাসে ইউজ করব ।

নিচে নিচে Animal কে implements করে Dog এ ব্যবহারের জন্য একটি Dog ক্লাস তৈরি করা হয়েছে এবং সেখানে Animal এর ম্যাথড গুলো ইউজ করা হয়েছে

আবার নিচে Animal কে implements করে Snake এ ব্যবহারের জন্য একটি Snake ক্লাস তৈরি করা হয়েছে এবং সেখানে Animal এর ম্যাথড গুলো ইউজ করা হয়েছে

এমনকি ওই ক্লাস দুটো কে নিউ দারা অবজেক্ট তৈরি করা যাবে যেখানে এনিমেল তৈরি করা যাবে না ।