Java এবং C উভয়েই প্রোগ্রামিং বিশ্বে সবচেয়ে জনপ্রিয় প্রোগ্রামিং ভাষা। তাদের বিভিন্ন গুরুত্বপূর্ণ বৈশিষ্ট্য এবং ফিচারের কারণে এই দুটি ভাষা বিশ্বব্যাপী ব্যাপকভাবে ব্যবহৃত হয়।
उনके বৈশিষ্ট্যগুলোর ভিত্তিতে Java এবং C-এর মধ্যে গুরুত্বপূর্ণ পার্থক্যগুলো নিচে দেওয়া হলো
| ক্র. নং | মূল বিষয় | Java | C |
|---|---|---|---|
| 1 | প্রবর্তন | Java C-র পরে ডেভেলপ হয়েছে ইयर কম্পারিজনে। এটি জেমস গোসলিং দ্বারা 1995 সালে ডেভেলপ করা হয়েছে। | অন্যদিকে C Java-র আগে ইন্ট্রোডিউস করা হয়েছিল এবং ডেনিস এম. রিচি দ্বারা 1969 এবং 1973 এর মধ্যে ডেভেলপ করা হয়েছিল। |
| 2 | টাইপ | Java একটি হাই-লেভেল ল্যাঙ্গুয়েজ এবং আরও ডেটা-ওরিয়েন্টেড বিশ্বব্যাপী অবজেক্ট-ওরিয়েন্টেড ল্যাঙ্গুয়েজ হিসেবে পরিচিত। | অন্যদিকে C একটি মিডল-লেভেল ল্যাঙ্গুয়েজ এবং আরও প্রসিডিউর-ওরিয়েন্টেড বিশ্বব্যাপী প্রসিডিউরাল প্রোগ্রামিং ল্যাঙ্গুয়েজ হিসেবে পরিচিত। |
| 3 | কম্পাইলেশন | একটু حد تک বলা যায় Java-তে কম্পাইলেশন নেই কারণ এটি একটি ইন্টারপ্রেটেড ল্যাঙ্গুয়েজ যা Java-তে, কোড প্রথমে বাইটকোডে ট্রান্সফর্ম হয় এবং সেই বাইটকোড JVM (Java Virtual Machine) দ্বারা এক্সিকিউট হয়। | অন্যদিকে C একটি কম্পাইলড ল্যাঙ্গুয়েজ অর্থাৎ এটি কোডকে মেশিন ল্যাঙ্গুয়েজে কনভার্ট করে যাতে মেশিন বা সিস্টেম বুঝতে পারে। |
| 4 | ফাংশনাল ইউনিট | যে طورে ইতিমধ্যে উল্লেখ করা হয়েছে Java একটি অবজেক্ট ওরিয়েন্টেড ল্যাঙ্গুয়েজ এবং তাই এর ফাংশনাল ইউনিট হল অবজেক্ট। | অন্যদিকে C একটি প্রসিডিউরাল প্রোগ্রামিং ল্যাঙ্গুয়েজ এবং তাই এর ফাংশনাল ইউনিট হল ফাংশন। |
| 5 | ইনহেরিটেন্স এবং থ্রেডিং | OOPs-এর অন্যান্য ফিচারের পাশাপাশি Java-তে ইনহেরিটেন্স প্রোপার্টি রয়েছে যা কোড রিঅ্যुजেবিলিটিতে খুব ইউজফুল। অথবা Java থ্রেডিং কনসেপ্ট সাপোর্ট করে। | অন্যদিকে C ইনহেরিটেন্স সাপোর্ট করে না যা কোড রিঅ্যুজেবিলিটিতে খুব ইউজফুল। তাই C প্রিফার্ড নয় যখন কেউ রিয়েল ওরল্ড অনুযায়ী জিনিসগুলোর রিলেশন ইনহেরিটেন্স রিলেশন অনুযায়ী করতে চায়। অথবা C থ্রেডিং সাপোর্ট করে না। |
| 5 | প্ল্যাটফর্ম ডিপেন্ডেন্সি | Java প্ল্যাটফর্ম ইনডিপেনডেন্ট। | অন্যদিকে C প্ল্যাটফর্ম ডিপেন্ডেন্ট। |