জাভা টিউটোরিয়ালে স্বাগতম। আগের টিউটোরিয়ালে আমরা শিখেসিলাম eclipse ,jdk ,এই সব টুলস কোথায় পাবো এবং কি করে এই টুলস গুলি install করব । আজকে আমি class এবং object এর প্রধান ৩টি মূলনীতি সম্পর্কে সংক্ষেপে কিছু বলব আর কিছু বেসিক প্রোগ্রাম করব । তাহলে আর কথা বাড়িয়ে সময় নষ্ট করলাম না মেইন টপিকে ফিরে যাই ।
class কী ?
ক্লাস একটি ইউজার-ডিফাইন্ড ডেটা টাইপ , যা প্রোগ্রামের বিল্ট-ইন ডেটা টাইপের মত ক্রিয়া করে ।ক্লাস হল একই ধরনের কতগুলো অবজেক্টের সমষ্টি । যেমন ফল একটি ক্লাস বিবেচনা করলে ঐ শ্রেণীর কয়েকটি বস্তু যেমন , আম ,জাম ,কলা ,কাঠাল ,নারিকেল etc এক একটি অবজেক্ট । আগের টিউটোরিয়ালিও আমরা ক্লাস ও অবজেক্ট সম্পর্কে জেনে সিলাম , আজকে আরো কনসেপ্ট ক্লিয়ার হবে আশা করি ।
প্রোগ্রামে এক বা একাধিক ক্লাস থাকতে পারে ,এর উদারন আজকে আমরা একটু পরেই দেখব ।
object (অবজেক্ট ) কী ?
সাধারণভাবে অবজেক্ট বলতে বুজায় কোনো বস্তু ; যেমন , মানুষ একটি অবজেক্ট ;বই ,কলম ,পেন্সিল এগুলোর
প্রত্যেকটিই এক একটি অবজেক্ট ।
অবজেক্ট ওরিয়েন্টেড প্রোগ্রামিং এর কিছু বৈশিষ্ট বা মূলনীতি আছে ।
এই গুলো হলো :
১)inheritance
২)polymorphism
৩)Encapsulation
৪)Data Hiding
৫)Static Binding
৬)Dynamic Binding
৭)Message Passing
আজকে এই গুলো নিয়ে আলোচনা করব না , কারণ মাথা hang হয়ে যেতে পারে । এখন প্রোগ্রামিং এ আশা যাক ।
আগের টিউটোরিয়ালে আমরা একটি লাইন console বা output এ ডিসপ্লে করে ছিলাম ।
আজকে সেই কাজই করব কিন্তু সেটি multiple class এ । main ক্লাস public static void main(String[] args) {} এটি হলো প্রোগ্রামিং এর এন্ট্রি পয়েন্ট , অর্থাৎ এই main ক্লাস এর modde যা লেখব সেটিই আউটপুট এ আসবে ।এখন আগের দিনের test ক্লাসটি ওপেন করি ।
public class Test {
public static void main(String[] args) {
}
}
এই রকম একটি কোড আমরা দেখতে পাব ।
আগের দিনের মত প্রজেক্টি সিলেক্ট করি ,এরপর মাউস এর রাইট ক্লিক করে নিউ অপসনে যাব
এবং সেখানে গিয়া class সিলেক্ট করব ।
তবে এইবার public static void main(String[] args) এই অপসনটি থেকে টিক চিন্ন তুলে দিব
কারণ আমাদের already একটি main ক্লাস আছে ,একটি প্রজেক্টে একটি মাত্র main ক্লাস হবে ।
এই ভাবে class A {}, class B {}, class C {} create করি ।
public class A {
}
public class B {
}
public class C {
}
এখন ক্লাস A double ক্লিক করে ওপেন করি ,আগের দিনের মত একটি লাইন প্রিন্ট করার জন্য কোড টুকু লেখি
public class A {
public void A(){
System.out.println(“This is A class”);
}
}
public class B {
public void B(){
System.out.println(“This is B class”);
}
}
public class C {
public void C(){
System.out.println(“This is C class”);
}
}
এখানে ক্লাস A এর ভিতর আমরা public void A(){} এইটি লেখেছি ।এটি হলো Method ।
এখন method কি ?
method হলো এমন একটি function যেকানে কিছু ডাটা থাকবে , যেমন test class এ মেথড হলো public static void main(String[] args) {}
মেথড এর definition নেক্সট টিউটোরিয়ালে আরো details আলোচনা করা হবে ।
এখন test class টি ওপেন করি main মেথডে নিচের কোড টুকু লেখি :
public class Test {
public static void main(String[] args) {
A a=new A();
B b=new B();
C c=new C();
a.A();
b.B();
c.C();
}
}
এখানে new একটি Keyword ,যেটি অবজেক্ট create করে থাকে ।
আমরা A ,B ,C ক্লাসের অবজেক্ট create করে মেথড গুলি access করব ।
খেয়াল করে দেখো আমরা main ক্লাসে কিছু প্রিন্ট করি নাই
সব কিছু A ,B ,C ক্লাসে করেছি ।
এখন প্রোগ্রামটি রান করি ।
কি -বোর্ড এর ctrl +F11 press করলে প্রোগ্রাম রান হবে ।
আজকে অনেক প্রেসার দিলাম , তাই আজকে আর না beginner বন্ধুরা নেক্সট টিউটোরিয়ালে
আরো details আলোচনা করব ।
Author : M. Raihan
Faysal Yousuf
12 January, 2014 at03:41:47 AM,
আমার একজন কনটেন্ট রাইটার দরকার।
আর্টিকেল লিখতে হবে ফুড রিলেটেড ব্লগের জন্য। আর্টিকেল রাইটার কে অবশ্যই ইংলিশে ভাল হতে হবে, গ্রামার এ ভুল থাকা চলবে না এবং আর্টিকেল কোয়ালিটি ভাল রাখতে হবে।
আগ্রহীরা আমাকে আপনার রেট এবং স্যাম্পল সহ ইনবক্স করুন।
The much better article, the much you will be payed 🙂
Thanks.
jis
15 May, 2015 at11:31:45 PM,
আপনার টিউটোরিয়াল গুলা অনেক ভাল। কিন্তু সমস্যা একটাই Next টিউটোরিয়াল মোবাইলে খুঁজে পেতে সমস্যা হয়। যদি Next টিউটোরিয়ালের Link টা দিতেন সবগুলাতে তাহলে ভাল হতো।
ধন্যবাদ