কম্পিউটার টিউটোরিয়াল

জাভা ৯-এ JShell-এ বিভিন্ন স্টার্টআপ স্ক্রিপ্ট

JShell হলো একটি ইন্টারেক্টিভ জাভা শেল টুল যা JShell-এ서 কোড এক্সিকিউট করে এবং ইনস্ট্যান্ট আউটপুট দেখায়। JShell REPL (Read-Evaluate-Print-Loop) টুল যা কমান্ড-লাইন প্রম্পট থেকে রান করা যায়।

JShell-এ, স্টার্টআপে একটি স্ক্রিপ্ট লোড করার অপশন থাকে যাতে কিছু স্পেশাল প্রিডিফাইনড অপশন থাকে। এগুলো "--startup" ফ্ল্যাগ ব্যবহার করে সপেসিফাই করা যায় একটি ফাইলনেম বা DEFAULT, JAVASE, এবং PRINTING-এ से একটা পাস করে। আমরা "/list -start" কমান্ড ব্যবহার করে সব স্টার্টআপ স্নিপেট দেখতে পারি যেগুলো ইভ্যালুয়েট করা হবে।

  • DEFAULT: এটি ডিফল্ট বিহেভিয়ার লোড করে। এটি একই কাজ করে যদি এটি স্পেসিফাই না করা হয়।
  • JAVASE: এটি ডিফল্টভাবে সকল Java SE প্যাকেজ ইম্পোর্ট করে।
  • PRINTING: এটি print, println এবং printf ফাংশন ডিফাইন করে ব্যবহার করার জন্য।

নিচের কোড স্নিপেটে, আমরা "DEFAULT" স্টার্টআপ স্ক্রিপ্ট হিসেবে ব্যবহার করতে পারি।

C:\Users\User>jshell --startup DEFAULT
| Welcome to JShell -- Version 9.0.4
| For an introduction type: /help intro
jshell> /list -start
s1 : import java.io.*;
s2 : import java.math.*;
s3 : import java.net.*;
s4 : import java.nio.file.*;
s5 : import java.util.*;
s6 : import java.util.concurrent.*;
s7 : import java.util.function.*;
s8 : import java.util.prefs.*;
s9 : import java.util.regex.*;
s10 : import java.util.stream.*;

নিচের কোড স্নিপেটে, আমরা "JAVASE" স্টার্টআপ স্ক্রিপ্ট হিসেবে ব্যবহার করতে পারি।

C:\Users\User>jshell --startup JAVASE
| Welcome to JShell -- Version 9.0.4
| For an introduction type: /help intro
jshell> /list -start
s1 : import java.applet.*;
s2 : import java.awt.*;
s3 : import java.awt.color.*;
s4 : import java.awt.datatransfer.*;
s5 : import java.awt.desktop.*
s6 : import java.awt.dnd.*;
s7 : import java.awt.event.*;
s8 : import java.awt.font.*;
s9 : import java.awt.geom.*;
s10 : import java.awt.im.*;
s11 : import java.awt.im.spi.*;
s12 : import java.awt.image.*;
s13 : import java.awt.image.renderable.*
s14 : import java.awt.print.*
s15 : import java.beans.*
s16 : import java.beans.beancontext.*
s17 : import java.io.*
s18 : import java.lang.*
s19 : import java.lang.annotation.*
s20 : import java.lang.instrument.*
s21 : import java.lang.invoke.*
s22 : import java.lang.management.*
s23 : import java.lang.module.*
s24 : import java.lang.ref.*
s25 : import java.lang.reflect.*
s26 : import java.math.*
s27 : import java.net.*
s28 : import java.net.spi.*
s29 : import java.nio.*
s30 : import java.nio.channels.*
s31 : import java.nio.channels.spi.*
s32 : import java.nio.charset.*
s33 : import java.nio.charset.spi.*
s34 : import java.nio.file.*
s35 : import java.nio.file.attribute.*
s36 : import java.nio.file.spi.*
s37 : import java.rmi.*
s38 : import java.rmi.activation.*
s39 : import java.rmi.dgc.*
s40 : import java.rmi.registry.*
s41 : import java.rmi.server.*
s42 : import java.security.*
s43 : import java.security.acl.*
s44 : import java.security.cert.*
s45 : import java.security.interfaces.*
s46 : import java.security.spec.*
s47 : import java.sql.*
s48 : import java.text.*
s49 : import java.text.spi.*
s50 : import java.time.*
s51 : import java.time.chrono.*
s52 : import java.time.format.*
s53 : import java.time.temporal.*
s54 : import java.time.zone.*
s55 : import java.util.*
s56 : import java.util.concurrent.*
s57 : import java.util.concurrent.atomic.*
s58 : import java.util.concurrent.locks.*
s59 : import java.util.function.*
s60 : import java.util.jar.*
s61 : import java.util.logging.*
s62 : import java.util.prefs.*
s63 : import java.util.regex.*
s64 : import java.util.spi.*
s65 : import java.util.stream.*
s66 : import java.util.zip.*
s67 : import javax.accessibility.*
s68 : import javax.annotation.processing.*
s69 : import javax.crypto.*
s70 : import javax.crypto.interfaces.*
s71 : import javax.crypto.spec.*
s72 : import javax.imageio.*
s73 : import javax.imageio.event.*
s74 : import javax.imageio.metadata.*
s75 : import javax.imageio.plugins.bmp.*
s76 : import javax.imageio.plugins.jpeg.*
s77 : import javax.imageio.plugins.tiff.*
s78 : import javax.imageio.spi.*
s79 : import javax.imageio.stream.*
s80 : import javax.lang.model.*
s81 : import javax.lang.model.element.*
s82 : import javax.lang.model.type.*
s83 : import javax.lang.model.util.*
s84 : import javax.management.*
s85 : import javax.management.loading.*
s86 : import javax.management.modelmbean.*
s87 : import javax.management.monitor.*
s88 : import javax.management.openmbean.*
s89 : import javax.management.relation.*
s90 : import javax.management.remote.*
s91 : import javax.management.remote.rmi.*
s92 : import javax.management.timer.*
s93 : import javax.naming.*
s94 : import javax.naming.directory.*
s95 : import javax.naming.event.*
s96 : import javax.naming.ldap.*
s97 : import javax.naming.spi.*
s98 : import javax.net.*
s99 : import javax.net.ssl.*
s100 : import javax.print.*
s101 : import javax.print.attribute.*
s102 : import javax.print.attribute.standard.*
s103 : import javax.print.event.*
s104 : import javax.rmi.ssl.*
s105 : import javax.script.*
s106 : import javax.security.auth.*
s107 : import javax.security.auth.callback.*
s108 : import javax.security.auth.kerberos.*
s109 : import javax.security.auth.login.*
s110 : import javax.security.auth.spi.*
s111 : import javax.security.auth.x500.*
s112 : import javax.security.cert.*
s113 : import javax.security.sasl.*
s114 : import javax.sound.midi.*
s115 : import javax.sound.midi.spi.*
s116 : import javax.sound.sampled.*
s117 : import javax.sound.sampled.spi.*
s118 : import javax.sql.*
s119 : import javax.sql.rowset.*
s120 : import javax.sql.rowset.serial.*
s121 : import javax.sql.rowset.spi.*
s122 : import javax.swing.*
s123 : import javax.swing.border.*
s124 : import javax.swing.colorchooser.*
s125 : import javax.swing.event.*
s126 : import javax.swing.filechooser.*
s127 : import javax.swing.plaf.*
s128 : import javax.swing.plaf.basic.*
s129 : import javax.swing.plaf.metal.*
s130 : import javax.swing.plaf.multi.*
s131 : import javax.swing.plaf.nimbus.*
s132 : import javax.swing.plaf.synth.*
s133 : import javax.swing.table.*
s134 : import javax.swing.text.*
s135 : import javax.swing.text.html.*
s136 : import javax.swing.text.html.parser.*
s137 : import javax.swing.text.rtf.*
s138 : import javax.swing.tree.*
s139 : import javax.swing.undo.*
s140 : import javax.tools.*
s141 : import javax.transaction.xa.*
s142 : import javax.xml.*
s143 : import javax.xml.catalog.*
s144 : import javax.xml.crypto.*
s145 : import javax.xml.crypto.dom.*
s146 : import javax.xml.crypto.dsig.*
s147 : import javax.xml.crypto.dsig.dom.*
s148 : import javax.xml.crypto.dsig.keyinfo.*
s149 : import javax.xml.crypto.dsig.spec.*
s150 : import javax.xml.datatype.*
s151 : import javax.xml.namespace.*
s152 : import javax.xml.parsers.*
s153 : import javax.xml.stream.*
s154 : import javax.xml.stream.events.*
s155 : import javax.xml.stream.util.*
s156 : import javax.xml.transform.*
s157 : import javax.xml.transform.dom.*
s158 : import javax.xml.transform.sax.*
s159 : import javax.xml.transform.stax.*
s160 : import javax.xml.transform.stream.*
s161 : import javax.xml.validation.*
s162 : import javax.xml.xpath.*
s163 : import org.ietf.jgss.*
s164 : import org.w3c.dom.*
s165 : import org.w3c.dom.bootstrap.*
s166 : import org.w3c.dom.events.*
s167 : import org.w3c.dom.ls.*
s168 : import org.w3c.dom.ranges.*
s169 : import org.w3c.dom.traversal.*
s170 : import org.w3c.dom.views.*
s171 : import org.xml.sax.*
s172 : import org.xml.sax.ext.*
s173 : import org.xml.sax.helpers.*;

নিচের কোড স্নিপেটে, আমরা "PRINTING" স্টার্টআপ স্ক্রিপ্ট হিসেবে ব্যবহার করতে পারি।

C:\Users\User>jshell --startup PRINTING
| Welcome to JShell -- Version 9.0.4
| For an introduction type: /help intro
jshell> /list -start
s1 : void print(boolean b) { System.out.print(b); }
s2 : void print(char c) { System.out.print(c); }
s3 : void print(int i) { System.out.print(i); }
s4 : void print(long l) { System.out.print(l); }
s5 : void print(float f) { System.out.print(f); }
s6 : void print(double d) { System.out.print(d); }
s7 : void print(char s[]) { System.out.print(s); }
s8 : void print(String s) { System.out.print(s); }
s9 : void print(Object obj) { System.out.print(obj); }
s10 : void println() { System.out.println(); }
s11 : void println(boolean b) { System.out.println(b); }
s12 : void println(char c) { System.out.println(c); }
s13 : void println(int i) { System.out.println(i); }
s14 : void println(long l) { System.out.println(l); }
s15 : void println(float f) { System.out.println(f); }
s16 : void println(double d) { System.out.println(d); }
s17 : void println(char s[]) { System.out.println(s); }
s18 : void println(String s) { System.out.println(s); }
s19 : void println(Object obj) { System.out.println(obj); }
s20 : void printf(java.util.Locale l, String format, Object... args) { System.out.printf(l, format, args); }
s21 : void printf(String format, Object... args) { System.out.printf(format, args); }
  1. জাভা ৯-এ JShell-এ পালন করণীয় নিয়মগুলো

  2. জাভা ৯-এ JShell-এ এক্সটার্নাল ডিক্লেরেশনের নিয়মাবলী

  3. জাভা ৯-এ JShell-এ /edit কমান্ডের çeşitাবলী

  4. জাভা প্রোগ্রাম এক্সিকিউশনে জড়িত বিভিন্ন ধাপ