Operator Overloading খুব সহজ করে
Operator Overloading খুব সহজ করে বুঝলে:
আমরা সাধারণত +, -, *, / এর মতো অপারেটর ব্যবহার করি সংখ্যা (+ করা, গুণ করা ইত্যাদি) নিয়ে কাজ করার জন্য। কিন্তু Kotlin-এ আপনি চাইলে আপনার নিজের ক্লাসের জন্যও এই অপারেটরগুলো কাস্টমাইজ করতে পারেন! এটাকেই Operator Overloading বলে।
✨ সহজ উদাহরণ:
ধরুন, আমাদের কাছে একটি Point নামে ক্লাস আছে, যেখানে x ও y নামের দুটি সংখ্যা আছে।
class Point(val x: Int, val y: Int)
এখন, আমরা চাই যেন দুইটি Point-কে + দিয়ে যোগ করতে পারি, যেমন:
val p1 = Point(3, 4)
val p2 = Point(1, 2)
val result = p1 + p2 // আমরা চাই এটি সম্ভব হোক!
কিন্তু ডিফল্টভাবে + অপারেটর দুটি Point যোগ করতে পারবে না! তাই আমাদেরকে operator fun plus ফাংশন লিখতে হবে।
✅ operator কীওয়ার্ড দিয়ে Overload করা:
class Point(val x: Int, val y: Int) {
operator fun plus(other: Point): Point {
return Point(this.x + other.x, this.y + other.y)
}
}
এখন, আমরা দুইটি Point যোগ করতে পারবো:
val p1 = Point(3, 4)
val p2 = Point(1, 2)
val result = p1 + p2
println("New Point: (${result.x}, ${result.y})") // Output: New Point: (4, 6)
📌 কিভাবে কাজ করলো?
+অপারেটর ব্যবহার করলেই Kotlinoperator fun plus()ফাংশনকে কল করবে।- আমরা দুইটি
Point-এর x ও y যোগ করে নতুনPointতৈরি করেছি।
🎯 অন্যান্য অপারেটর Overload করা:
operator fun minus(other: Point): Point {
return Point(this.x - other.x, this.y - other.y)
}
এখন p1 - p2 ও সম্ভব হবে! 🎉
🚀 উপসংহার
Operator Overloading ব্যবহার করলে কোড সহজ ও পড়তে সুবিধাজনক হয়। তবে অতিরিক্ত ব্যবহার না করাই ভালো, কারণ এটি কোডের পড়ার যোগ্যতা (readability) কমাতে পারে।
🔹 বুঝতে পেরেছেন? 😃
Comments
Post a Comment