CodeGym /Java Course /মডিউল 1 /জাভাতে সংরক্ষিত শব্দ

জাভাতে সংরক্ষিত শব্দ

মডিউল 1
লেভেল 23 , পাঠ 0
বিদ্যমান

1. শব্দের তালিকা

যে কোনো প্রোগ্রামিং ভাষার মতো, জাভাতেও বিশেষ অর্থ আছে এমন শব্দ আছে। উদাহরণস্বরূপ, returnবা ifবা whileএই শব্দগুলিকে কীওয়ার্ড ( কীওয়ার্ড ) বলা হয় এবং জাভা ভাষার দ্বারা সংরক্ষিত বলে বিবেচিত হয়।

আপনি একটি পরিবর্তনশীল নাম, পদ্ধতির নাম, বা শ্রেণীর নাম হিসাবে এই শব্দগুলি ব্যবহার করতে পারবেন না। কম্পাইলার সবসময় তাদের একটি কঠোরভাবে সংজ্ঞায়িত উপায়ে ব্যাখ্যা করবে। 54জাভাতে এরকম শব্দ আছে ।

abstract
assert
boolean
break
byte
case
catch
char
class
const
continue
default
do
double
else
enum
extends
final
finally
float
for
goto
if
implements
import
instanceof
int
interface
long
native
new
package
private
protected
public
return
short
static
strictfp
super
switch
synchronized
this
throw
throws
transient
try
void
volatile
while
var
true
null
false

আপনি ইতিমধ্যে তাদের কিছু জানেন, এবং আমরা এখন বাকি সম্পর্কে কথা বলতে হবে.


2. আদিম প্রকার

আপনি সম্ভবত মনে রাখবেন, জাভার 8 টি আদিম প্রকার রয়েছে এবং তাদের প্রত্যেকটির নিজস্ব কীওয়ার্ড রয়েছে:

  • byte
  • short
  • int
  • long
  • char
  • float
  • double
  • boolean
  • void

যদি আপনার যথেষ্ট অনুসন্ধিৎসু মন থাকে, তাহলে একটি ভাল সুযোগ আছে যে আপনি ইতিমধ্যে একটি পরিবর্তনশীল int নাম দেওয়ার চেষ্টা করেছেন। এবং অবশ্যই আপনি সফল হননি। এটি সঠিকভাবে কারণ সমস্ত আদিম প্রকারের নাম সংরক্ষিত শব্দ।

ধরনটিও voidএই বিভাগে পড়ে।


3. লুপ এবং শাখা

লুপ এবং শাখাগুলি আমাদের কীওয়ার্ডগুলির একটি বরং দীর্ঘ তালিকা দেয়:

  • if
  • else
  • switch
  • case
  • default
  • while
  • do
  • for
  • break
  • continue

breakলুপ ( এবং continue) এবং একাধিক শাখা ( switch) বাধা দেওয়ার জন্য বিভিন্ন ধরণের লুপ, শাখা এবং নিয়ন্ত্রণ বিবৃতি প্রদান করার জন্য ভাষার জন্য মাত্র 10টি শব্দ যথেষ্ট। আপনি ইতিমধ্যে এই সমস্ত কীওয়ার্ডের সাথে পরিচিত।


4. ব্যতিক্রম

ব্যতিক্রম আমাদের 5টি কীওয়ার্ড দেয়:

  • try
  • catch
  • finally
  • throw
  • throws

এগুলো সবই একটি try-catch-finallyব্লকের অংশ। ব্যতিক্রম নিক্ষেপের জন্য অপারেটর হল throw, এবং কীওয়ার্ডটি ব্যতিক্রম প্রক্রিয়া throwsসমর্থন করে ।checked

ভাল খবর হল আপনি ব্যতিক্রম সম্পর্কিত সমস্ত কীওয়ার্ডের সাথে ইতিমধ্যেই পরিচিত, তাই আপনি ইতিমধ্যেই বেশিরভাগ ব্যতিক্রমগুলির সাথে কাজ করার সাথে পরিচিত।


5. দৃশ্যমানতা

এখানে শুধুমাত্র তিনটি কীওয়ার্ড আছে, এবং আপনি ইতিমধ্যেই তাদের সাথে পরিচিত।

  • private
  • protected
  • public

publicপ্রোগ্রামের যেকোনো স্থান থেকে একটি পদ্ধতি/ভেরিয়েবল/ক্লাসে অ্যাক্সেসের অনুমতি দেয়।

privateপ্রোগ্রামের যেকোনো স্থান থেকে একটি পদ্ধতি/ভেরিয়েবল/ক্লাস অ্যাক্সেস করা নিষিদ্ধ করে। সংশোধক দ্বারা চিহ্নিত পদ্ধতি হিসাবে শুধুমাত্র একই শ্রেণীর মধ্যে অ্যাক্সেস অনুমোদিত private

protectedএকইভাবে কাজ করে private, তবে উত্তরাধিকারসূত্রে পাওয়া ক্লাস থেকে একটি পদ্ধতি/ভেরিয়েবল/ক্লাসে অ্যাক্সেসের অনুমতি দেয়। আপনি যখন OOP এবং উত্তরাধিকারের সাথে পরিচিত হবেন তখন এই মডিফায়ারের সুবিধাগুলি আপনার কাছে আরও স্পষ্ট হয়ে উঠবে।


6. ক্লাস নিয়ে কাজ করা

এই বিভাগে 11টি কীওয়ার্ড রয়েছে:

  • class
  • interface
  • enum
  • import
  • package
  • extends
  • implements
  • static
  • final
  • abstract
  • default

তাদের ৪টি দলে ভাগ করা যায়।

প্রথম গ্রুপটি ক্লাস তৈরির সাথে সম্পর্কিত: class, interfaceএবং enum. আপনি ইতিমধ্যে ক্লাস এবং enums ঘোষণা সম্পর্কে শিখেছি . কীওয়ার্ডটি interfaceআরও একটি ক্লাসের মতো টাইপ ঘোষণা করতে ব্যবহৃত হয়: ইন্টারফেস।

দ্বিতীয় গ্রুপটি প্যাকেজ এবং আমদানি কীওয়ার্ড নিয়ে গঠিত, যা আপনি ইতিমধ্যে পরিচিত। প্যাকেজ কীওয়ার্ডটি ক্লাস ফাইলে একটি ক্লাসের প্যাকেজ নির্দিষ্ট করতে ব্যবহৃত হয়। এবং importতাই আমরা আমাদের নিজস্ব ক্লাস লেখার সময় বহিরাগত ক্লাসের ছোট নাম ব্যবহার করতে পারি।

extendsএবং কীওয়ার্ডগুলি implementsউত্তরাধিকারের জন্য ব্যবহৃত হয়। আপনি জাভা কোর অনুসন্ধানের একেবারে শুরুতে সেগুলি দেখে নেবেন।

অবশেষে, শেষ গ্রুপটি static, final, default, এবং abstractসংশোধক নিয়ে গঠিত। আপনি ইতিমধ্যে সম্পর্কে একটু জানেন staticএবং final. কিওয়ার্ড abstractএকটি ক্লাস বা পদ্ধতি বিমূর্ত করতে ব্যবহার করা হয়. জাভা কোর কোয়েস্টে উত্তরাধিকার অধ্যয়ন করার সময় আপনি আরও বিশদ পাবেন।


7. বস্তু এবং ভেরিয়েবল নিয়ে কাজ করা

বস্তু, পদ্ধতি এবং ভেরিয়েবল নিয়ে কাজ করার সময় আরও ছয়টি কীওয়ার্ড ব্যবহার করা হয়।

  • new
  • instanceof
  • this
  • super
  • return
  • var(জাভা 10 থেকে)

অপারেটরটি newনতুন বস্তু তৈরি করতে ব্যবহৃত হয় - আপনি ইতিমধ্যেই জানেন।

instanceofএকটি ভেরিয়েবল একটি নির্দিষ্ট ধরনের একটি বস্তুর একটি রেফারেন্স রয়েছে তা যাচাই করতে অপারেটর ব্যবহার করা হয় । আপনি ইতিমধ্যে এটি সঙ্গে পরিচিত.

কীওয়ার্ডটি thisইনস্ট্যান্স ভেরিয়েবল এবং পদ্ধতির ছায়ার কারণে উদ্ভূত সমস্যার সমাধান করতে ব্যবহৃত হয়। আপনি এই হিসাবে অধ্যয়ন করেছেন.

কীওয়ার্ডটি superএর সাথে সাদৃশ্যপূর্ণ this, তবে এটি প্যারেন্ট ক্লাসের পদ্ধতি এবং ভেরিয়েবলগুলি উল্লেখ করতে ব্যবহৃত হয়। অভিভাবক শ্রেণীকে সুপারক্লাসও বলা হয়।

বিবৃতিটি returnএকটি পদ্ধতির মান ফেরত দিতে এবং একটি পদ্ধতির কার্য সম্পাদন বন্ধ করতে ব্যবহৃত হয়।

অবশেষে, varএকটি ভেরিয়েবল ঘোষণা করার জন্য যার ধরন স্বয়ংক্রিয়ভাবে অনুমান করা হয়। আপনি ইতিমধ্যে এই সঙ্গে পরিচিত.


8. মাল্টিথ্রেডিং

জাভা সিনট্যাক্সের স্তরে, মাল্টিথ্রেডিং শুধুমাত্র দুটি শব্দ দ্বারা প্রতিনিধিত্ব করা হয়।

  • synchronized
  • volatile

আমরা তাদের স্পর্শও করব না। জাভা মাল্টিথ্রেডিং অনুসন্ধানে যান , এবং তারপরে আমরা ডুব দেব।


9. বিবিধ

আরও 4টি বিশেষ কীওয়ার্ড রয়েছে:

  • native
  • transient
  • assert
  • strictfp

nativeএকটি সংশোধক যা একটি পদ্ধতি ঘোষণার আগে লেখা যেতে পারে। এর মানে হল যে পদ্ধতি কোডটি জাভাতে নয়, C++ এ লেখা হয়েছে এবং জাভা মেশিনে (ভালভাবে, বা একটি DLL) এম্বেড করা হয়েছে। আপনি সম্ভবত ইতিমধ্যে অনুমান করেছেন, জাভা মেশিন নিজেই C++ এ লেখা আছে। ঠিক অনেক স্ট্যান্ডার্ড লাইব্রেরি পদ্ধতির মত।

transientএকটি সংশোধক যা ইনস্ট্যান্স ভেরিয়েবলের আগে লেখা যেতে পারে (একটি শ্রেণীর ক্ষেত্র)। এটি জাভা মেশিনকে ক্লাসের একটি অবজেক্টকে সিরিয়ালাইজ করার সময় চিহ্নিত ভেরিয়েবলটিকে এড়িয়ে যেতে (বা উপেক্ষা করতে) বলে। আপনি জাভা সংগ্রহ অনুসন্ধানে সিরিয়ালাইজেশন সম্পর্কে আরও জানতে পারেন।

assertএছাড়াও C++ থেকে জাভা আসে। এর সাহায্যে, আপনি আপনার কোডে অতিরিক্ত চেক যোগ করতে পারেন (উদাহরণস্বরূপ, একটি ভেরিয়েবল শূন্য কিনা তা পরীক্ষা করতে)। এখানে গুরুত্বপূর্ণ বিষয় হল এই চেকগুলি কম্পাইলের সময় সক্রিয় বা নিষ্ক্রিয় করা হয়।

আপনি অভ্যন্তরীণ পরীক্ষার জন্য প্রকল্পটি তৈরি করতে পারেন এবং এই চেকগুলি করা হবে (বিল্ডে অন্তর্ভুক্ত)। অথবা ব্যবহারকারীদের সরবরাহ করা হবে এমন প্রোগ্রামটির সংস্করণ তৈরি করতে আপনি সংকলনের সময় সেগুলিকে অক্ষম করতে পারেন।

strictfpকীওয়ার্ড এবং ইন্টেল প্রসেসরের অতিরিক্ত নির্ভুলতার জন্য , আমাদের কাছে আপনার জন্য একটি সম্পূর্ণ গল্প রয়েছে ।


10. সংরক্ষিত কিন্তু ব্যবহার করা হয় না

এছাড়াও দুটি কীওয়ার্ড আছে যা সংরক্ষিত কিন্তু ব্যবহার করা হয় না।

  • const
  • goto

এগুলিও C++ ভাষার একটি উত্তরাধিকার, যেখানে সেগুলি বিদ্যমান এবং ব্যবহৃত হয়।


11. কীওয়ার্ড নয়

আনুষ্ঠানিকভাবে, true, falseএবং nullধ্রুবকগুলি কীওয়ার্ড নয়। যে বলে, তাদের প্রত্যেকের নিজস্ব বৈশিষ্ট্য রয়েছে। আপনি একটি পদ্ধতি trueবা একটি পরিবর্তনশীল নাম দিতে পারবেন না false। কম্পাইলার এই ধরনের কোড বুঝতে পারবে না এবং এটি কম্পাইল করবে না।

মন্তব্য
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION