হ্যাঁ , আমরা একটি বিমূর্ত শ্রেণীতে একটি প্যারামিটারাইজড কনস্ট্রাক্টরকে সংজ্ঞায়িত করতে পারি।
একটি বিমূর্ত শ্রেণীতে একটি প্যারামিটারাইজড কনস্ট্রাক্টর সংজ্ঞায়িত করার শর্তাবলী
- আমাদের নিশ্চিত করতে হবে যে যে ক্লাসটি একটি বিমূর্ত শ্রেণী প্রসারিত করছে তার একটি কনস্ট্রাক্টর আছে এবং এটি সুপারক্লাস প্যারামিটারাইজড কনস্ট্রাক্টরকে কল করতে পারে।
- আমরা super() ব্যবহার করে একটি সাবক্লাসে সুপারক্লাস প্যারামিটারাইজড কনস্ট্রাক্টরকে কল করতে পারি কল করুন।
- যদি আমরা super() না রাখি সাবক্লাস কনস্ট্রাক্টরে কল করুন, একটি কম্পাইল-টাইম ত্রুটি ঘটবে।
উদাহরণ
abstract class AbstractClassTest { AbstractClassTest(int a) { // Parameterized Constructor System.out.println("Parameterized Constructor of an abstract class a="+ x); } } public class Test extends AbstractDemo { Test() { super(20); System.out.println("Test Class Constructor"); } public static void main(String[] args) { Test obj = new Test(); } }
উপরের উদাহরণে, আমাদের অবশ্যই বসাতে হবে asuper() কল করুন সাবক্লাস কনস্ট্রাক্টর (পরীক্ষা) এ, যদি না কম্পাইল-টাইম ত্রুটি ঘটবে।
আউটপুট
Parameterized Constructor of an abstract class a=20 Test Class Constructor