જાવા પ્રોગ્રામિંગ (4343203) - સમર 2024 સોલ્યુશન

જાવા પ્રોગ્રામિંગ (4343203) સમર 2024 પરીક્ષા માટે સોલ્યુશન ગાઈડ

પ્રશ્ન 1(અ) [3 ગુણ]

જાવામાં Garbage collection સમજાવો.

જવાબ: જાવામાં Garbage collection વણવપરાયેલા ઓબ્જેક્ટ્સને દૂર કરીને આપમેળે મેમરી ખાલી કરે છે.

કોષ્ટક: Garbage Collection પ્રક્રિયા

તબક્કોવર્ણન
MarkJVM મેમરીમાં બધા live ઓબ્જેક્ટ્સને ઓળખે છે
Sweepવણવપરાયેલા ઓબ્જેક્ટ્સ દૂર કરવામાં આવે છે
Compactબાકીના ઓબ્જેક્ટ્સને જગ્યા ખાલી કરવા માટે પુનર્ગઠિત કરવામાં આવે છે
  • આપમેળે: મેન્યુઅલ મેમરી મેનેજમેન્ટની જરૂર નથી
  • બેકગ્રાઉન્ડ: અલગ ઓછી પ્રાથમિકતાવાળા થ્રેડમાં ચાલે છે

મેમરી ટ્રીક: "MSC: Mark-Sweep-Compact આપમેળે મેમરી ખાલી કરે છે"

પ્રશ્ન 1(બ) [4 ગુણ]

JVM ને વિગતવાર સમજાવો.

જવાબ: JVM (Java Virtual Machine) એક વર્ચ્યુઅલ મશીન છે જે bytecode ને મશીન કોડમાં રૂપાંતરિત કરીને જાવાની પ્લેટફોર્મ સ્વતંત્રતા આપે છે.

આકૃતિ: JVM આર્કિટેક્ચર

  • પ્લેટફોર્મ સ્વતંત્રતા: એકવાર લખો, બધે ચલાવો
  • સુરક્ષા: Bytecode વેરિફિકેશન ખતરનાક કામગીરીને રોકે છે
  • ઓપ્ટિમાઈઝેશન: Just-in-time કમ્પાઈલેશન કામગીરી સુધારે છે

મેમરી ટ્રીક: "CLASS: Class Loader સુરક્ષિત સિસ્ટમ સંચાલન કરે છે"

પ્રશ્ન 1(ક) [7 ગુણ]

Fibonacci series પ્રિન્ટ કરવા માટેનો જાવા પ્રોગ્રામ લખો.

જવાબ: Fibonacci series એવી શ્રેણી બનાવે છે જેમાં દરેક સંખ્યા તેના અગાઉની બે સંખ્યાઓનો સરવાળો હોય.

કોડ બ્લોક:

Java
  • પ્રારંભિક: 0 અને 1 થી શરૂઆત કરો
  • લૂપ: શ્રેણી બનાવવા માટે N વખત પુનરાવર્તન કરો
  • ગણતરી: દરેક સંખ્યા પાછલી બે સંખ્યાનો સરવાળો છે

મેમરી ટ્રીક: "FSN: પ્રથમ + બીજી = આગળની સંખ્યા શ્રેણીમાં"

પ્રશ્ન 1(ક OR) [7 ગુણ]

કમાન્ડ લાઇન arguments નો ઉપયોગ કરીને કોઈપણ દસ સંખ્યાઓ માંથી ન્યૂનતમ શોધવા માટે જાવા પ્રોગ્રામ લખો.

જવાબ: કમાન્ડ લાઇન આર્ગ્યુમેન્ટ્સ જાવા પ્રોગ્રામ ચલાવતી વખતે સીધા ઇનપુટ આપવાની સુવિધા આપે છે.

કોડ બ્લોક:

Java
  • આર્ગ્યુમેન્ટ્સ પારસિંગ: સ્ટ્રિંગ આર્ગ્યુમેન્ટ્સને ઇન્ટીજરમાં રૂપાંતરિત કરો
  • પ્રારંભિક: પ્રથમ સંખ્યાને ન્યૂનતમ તરીકે સેટ કરો
  • તુલના: દરેક સંખ્યાને વર્તમાન ન્યૂનતમ સાથે ચકાસો

મેમરી ટ્રીક: "ICU: શરૂઆત, ચકાસણી, અપડેટ ન્યૂનતમ"

પ્રશ્ન 2(અ) [3 ગુણ]

Java OOP ના મૂળભૂત ખ્યાલોની યાદી બનાવો. કોઈપણ એક વિગતવાર સમજાવો.

જવાબ: જાવા ઓબ્જેક્ટ-ઓરિએન્ટેડ પ્રોગ્રામિંગ વાસ્તવિક દુનિયાની વસ્તુઓને મોડેલિંગ કરવા માટે મૂળભૂત સિદ્ધાંતો પર આધારિત છે.

કોષ્ટક: જાવામાં OOP ખ્યાલો

ખ્યાલવર્ણન
Encapsulationડેટા અને મેથડને એક એકમ તરીકે જોડવું
Inheritanceહાલના class માંથી નવા class બનાવવા
Polymorphismએક ઇન્ટરફેસ, વિવિધ અમલીકરણો
Abstractionઅમલીકરણની વિગતો છુપાવવી, કાર્યક્ષમતા બતાવવી
  • Encapsulation: એક્સેસ કંટ્રોલ દ્વારા ડેટાનું રક્ષણ કરે છે
  • ડેટા છુપાવવો: ખાનગી વેરિયેબલ્સ મેથડ્સ દ્વારા એક્સેસ થાય છે

મેમરી ટ્રીક: "PEAI: પ્રોગ્રામિંગ Encapsulates Abstracts Inherits"

પ્રશ્ન 2(બ) [4 ગુણ]

final કી-વર્ડ ઉદાહરણ સાથે સમજાવો.

જવાબ: જાવામાં final કી-વર્ડ ફેરફાર, વારસો અને ઓવરરાઇડિંગને મર્યાદિત કરવા માટે વપરાય છે.

કોષ્ટક: final કી-વર્ડના ઉપયોગો

ઉપયોગઅસરઉદાહરણ
final variableબદલી શકાતું નથીfinal int MAX = 100;
final methodઓવરરાઇડ કરી શકાતી નથીfinal void display() {}
final classવારસામાં લઈ શકાતો નથીfinal class Math {}

કોડ બ્લોક:

Java

મેમરી ટ્રીક: "VCM: Variables Constants Methods બદલી શકાતા નથી"

પ્રશ્ન 2(ક) [7 ગુણ]

કન્સ્ટ્રક્ટર શું છે? Parameterized કન્સ્ટ્રક્ટર ને ઉદાહરણ સાથે સમજાવો.

જવાબ: કન્સ્ટ્રક્ટર એ ઓબ્જેક્ટ બનાવતી વખતે તેને શરૂઆતી મૂલ્યો આપવા માટેની વિશેષ મેથડ છે.

આકૃતિ: કન્સ્ટ્રક્ટરના પ્રકારો

કોડ બ્લોક:

Java
  • પેરામીટર્સ: ઓબ્જેક્ટ બનાવતી વખતે કિંમતો સ્વીકારે છે
  • પ્રારંભિક: પાસ કરેલા મૂલ્યો સાથે ઓબ્જેક્ટ પ્રોપર્ટી સેટ કરે છે
  • ઓવરલોડિંગ: અલગ અલગ પેરામીટર્સ સાથે ઘણા કન્સ્ટ્રક્ટર્સ

મેમરી ટ્રીક: "SPO: વિદ્યાર્થી પેરામીટર્સ ઓબ્જેક્ટ પ્રોપર્ટી શરૂ કરે છે"

પ્રશ્ન 2(અ OR) [3 ગુણ]

ઉદાહરણ સાથે જાવા પ્રોગ્રામ સ્ટ્રક્ચર સમજાવો.

જવાબ: જાવા પ્રોગ્રામ સ્ટ્રક્ચર તાર્કિક રીતે ગોઠવાયેલા તત્વોના વિશિષ્ટ ક્રમને અનુસરે છે.

આકૃતિ: જાવા પ્રોગ્રામ સ્ટ્રક્ચર

goat
  • Package: સંબંધિત ક્લાસને જૂથમાં રાખે છે
  • Import: બાહ્ય ક્લાસને સમાવે છે
  • Class: વેરિયેબલ્સ અને મેથડ્સ ધરાવે છે

મેમરી ટ્રીક: "PIC: દરેક પ્રોગ્રામમાં Package Imports Class"

પ્રશ્ન 2(બ OR) [4 ગુણ]

યોગ્ય ઉદાહરણ સાથે static કી-વર્ડ સમજાવો.

જવાબ: Static કી-વર્ડ ક્લાસ-લેવલ વેરિયેબલ્સ અને મેથડ્સ બનાવે છે જે બધા ઓબ્જેક્ટ્સ વચ્ચે શેર થાય છે.

કોષ્ટક: Static vs Non-Static

ફીચરStaticNon-Static
મેમરીએક કોપીઘણી કોપીઓ
એક્સેસઓબ્જેક્ટ વગરઓબ્જેક્ટ દ્વારા
રેફરન્સક્લાસ નામઓબ્જેક્ટ નામ
લોડ થવાનો સમયક્લાસ લોડિંગઓબ્જેક્ટ બનાવટ

કોડ બ્લોક:

Java

મેમરી ટ્રીક: "SCM: Static બધા ઓબ્જેક્ટ માટે એકવાર મેમરી બનાવે છે"

પ્રશ્ન 2(ક OR) [7 ગુણ]

ઇનહેરીટન્સ વ્યાખ્યાયિત કરો. તેના પ્રકારોની યાદી બનાવો. Multilevel અને Hierarchical ઇનહેરીટન્સ ને યોગ્ય ઉદાહરણ સાથે સમજાવો.

જવાબ: ઇનહેરીટન્સ એ OOP સિદ્ધાંત છે જેમાં નવો ક્લાસ હાલના ક્લાસની સંપત્તિઓ અને વર્તનને મેળવે છે.

કોષ્ટક: જાવામાં ઇનહેરીટન્સના પ્રકારો

પ્રકારવર્ણન
Singleએક સબક્લાસ એક સુપરક્લાસથી વિસ્તરે છે
Multilevelઇનહેરીટન્સની સાંકળ (A→B→C)
Hierarchicalઘણા સબક્લાસ એક સુપરક્લાસથી વિસ્તરે છે
Multipleએક ક્લાસ ઘણા ક્લાસથી વિસ્તરે છે (ઇન્ટરફેસ દ્વારા)

આકૃતિ: Multilevel vs Hierarchical ઇનહેરીટન્સ

કોડ બ્લોક:

Java

મેમરી ટ્રીક: "SMHM: Single Multilevel Hierarchical ઇનહેરીટન્સના પ્રકારો છે"

પ્રશ્ન 3(અ) [3 ગુણ]

this કી-વર્ડને યોગ્ય ઉદાહરણ સાથે સમજાવો.

જવાબ: જાવામાં 'this' કી-વર્ડ વર્તમાન ઓબ્જેક્ટનો સંદર્ભ આપે છે, જે ઇન્સ્ટન્સ વેરિયેબલ્સ અને પેરામીટર્સ વચ્ચે તફાવત પાડે છે.

કોષ્ટક: 'this' કી-વર્ડના ઉપયોગો

ઉપયોગહેતુ
this.variableઇન્સ્ટન્સ વેરિયેબલ્સ એક્સેસ કરવા
this()વર્તમાન ક્લાસના કન્સ્ટ્રક્ટરને કોલ કરવા
return thisવર્તમાન ઓબ્જેક્ટ પાછો આપવા

કોડ બ્લોક:

Java

મેમરી ટ્રીક: "VAR: Variables Access Resolution this નો ઉપયોગ કરીને"

પ્રશ્ન 3(બ) [4 ગુણ]

જાવામાં વિવિધ એક્સેસ કંટ્રોલ સમજાવો.

જવાબ: જાવામાં એક્સેસ કંટ્રોલ ક્લાસેસ, મેથડ્સ અને વેરિયેબલ્સની દૃશ્યતા અને પહોંચને નિયંત્રિત કરે છે.

કોષ્ટક: જાવા એક્સેસ મોડિફાયર્સ

મોડિફાયરક્લાસપેકેજસબક્લાસજગત
private
default
protected
public
  • Private: માત્ર તે જ ક્લાસની અંદર
  • Default: તે જ પેકેજની અંદર
  • Protected: પેકેજ અને સબક્લાસમાં
  • Public: બધે જ પહોંચ

મેમરી ટ્રીક: "PDPP: Private Default Protected Public સંકુચિતથી વિશાળ"

પ્રશ્ન 3(ક) [7 ગુણ]

ઈન્ટરફેસ શું છે? ઈન્ટરફેસ દ્વારા ઉદાહરણ સાથે multiple inheritance સમજાવો.

જવાબ: ઈન્ટરફેસ એક એવો કરાર છે જે ક્લાસે શું કરવું જોઈએ તે નિર્દિષ્ટ કરે છે, જેમાં abstract મેથડ્સ, નિયતાંકો અને (Java 8થી) default મેથડ્સ હોય છે.

આકૃતિ: ઈન્ટરફેસથી Multiple Inheritance

કોડ બ્લોક:

Java
  • કરાર: અમલીકરણ વગર વર્તન વ્યાખ્યાયિત કરે છે
  • Implements: ક્લાસ કરાર પૂર્ણ કરે છે
  • Multiple: ઘણા ઈન્ટરફેસ લાગુ કરી શકાય છે

મેમરી ટ્રીક: "CIM: કરાર Implements Multiple ઈન્ટરફેસ"

પ્રશ્ન 3(અ OR) [3 ગુણ]

super કી-વર્ડ ઉદાહરણ સાથે સમજાવો.

જવાબ: super કી-વર્ડ પેરન્ટ ક્લાસનો સંદર્ભ આપે છે, જે પેરન્ટ મેથડ્સ, કન્સ્ટ્રક્ટર્સ અને વેરિયેબલ્સ એક્સેસ કરવા વપરાય છે.

કોષ્ટક: super કી-વર્ડના ઉપયોગો

ઉપયોગહેતુ
super.variableપેરન્ટ વેરિયેબલ એક્સેસ કરવા
super.method()પેરન્ટ મેથડ કોલ કરવા
super()પેરન્ટ કન્સ્ટ્રક્ટર કોલ કરવા

કોડ બ્લોક:

Java

મેમરી ટ્રીક: "VMC: Variables Methods Constructors super દ્વારા એક્સેસ થાય છે"

પ્રશ્ન 3(બ OR) [4 ગુણ]

પેકેજ શું છે? પેકેજ બનાવવાના પગલાં લખો અને તેનું ઉદાહરણ આપો.

જવાબ: પેકેજ એ જાવામાં સંબંધિત ક્લાસ અને ઈન્ટરફેસને સંગઠિત કરતું નેમસ્પેસ છે, જે નામકરણ સંઘર્ષને રોકે છે.

કોષ્ટક: પેકેજ બનાવવાના પગલાં

પગલુંક્રિયા
1ફાઈલની ટોચે પેકેજ નામ જાહેર કરો
2પેકેજ નામને અનુરૂપ ડિરેક્ટરી સ્ટ્રક્ચર બનાવો
3જાવા ફાઈલને ડિરેક્ટરીમાં સેવ કરો
4-d વિકલ્પ સાથે કમ્પાઈલ કરો
5ઉપયોગ કરવા માટે પેકેજ ઈમ્પોર્ટ કરો

કોડ બ્લોક:

Java

મેમરી ટ્રીક: "DISCO: Declare Import Save Compile Organize"

પ્રશ્ન 3(ક OR) [7 ગુણ]

વ્યાખ્યાયિત કરો: થ્રેડ ઓવરરાઇડિંગ. થ્રેડ ઓવરરાઇડિંગ માટેના નિયમોની યાદી બનાવો. થ્રેડ ઓવરરાઇડિંગને ઇમ્પલેમેન્ટ કરતો જાવા પ્રોગ્રામ લખો.

જવાબ: મેથડ ઓવરરાઈડિંગ ત્યારે થાય છે જ્યારે સબક્લાસ તેના પેરન્ટ ક્લાસમાં વ્યાખ્યાયિત મેથડ માટે ચોક્કસ અમલીકરણ આપે છે.

કોષ્ટક: મેથડ ઓવરરાઈડિંગના નિયમો

નિયમવર્ણન
એક જ નામમેથડનું નામ સરખું હોવું જોઈએ
એક જ પેરામીટર્સપેરામીટર સંખ્યા અને પ્રકાર મેળ ખાવા જોઈએ
એક જ રિટર્ન પ્રકારરિટર્ન પ્રકાર સરખો અથવા સબટાઈપ હોવો જોઈએ
એક્સેસ મોડિફાયરવધુ પ્રતિબંધિત ન હોઈ શકે
એક્સેપ્શન્સવધુ વિસ્તૃત checked exception ફેંકી ન શકે

કોડ બ્લોક:

Java
  • રનટાઈમ પોલિમોર્ફિઝમ: રનટાઈમ પર મેથડનું રિઝોલ્યુશન થાય છે
  • @Override: એનોટેશન ખાતરી કરે છે કે મેથડ ઓવરરાઈડ થઈ રહી છે
  • ઇનહેરીટન્સ: IS-A સંબંધની જરૂર છે

મેમરી ટ્રીક: "SPARE: એક જ પેરામીટર્સ, એક્સેસ, રિટર્ન, એક્સેપ્શન્સ"

પ્રશ્ન 4(અ) [3 ગુણ]

યોગ્ય ઉદાહરણ સાથે abstract class સમજાવો.

જવાબ: Abstract class ને ઈન્સ્ટન્સ બનાવી ન શકાય અને તેમાં abstract મેથડ્સ હોઈ શકે જે સબક્લાસમાં અમલીકરણ કરવી જરૂરી છે.

કોષ્ટક: Abstract Class vs Interface

ફીચરAbstract ClassInterface
ઈન્સ્ટન્સબનાવી ન શકાયબનાવી ન શકાય
મેથડ્સકોન્ક્રીટ અને abstractAbstract (+ Java 8થી default)
વેરિયેબલ્સકોઈપણ પ્રકારમાત્ર નિયતાંકો
કન્સ્ટ્રક્ટરધરાવે છેધરાવતું નથી

કોડ બ્લોક:

Java

મેમરી ટ્રીક: "PAI: આંશિક Abstract અમલીકરણ મુખ્ય છે"

પ્રશ્ન 4(બ) [4 ગુણ]

થ્રેડ શું છે? થ્રેડ જીવનચક્ર સમજાવો.

જવાબ: થ્રેડ એ લાઈટવેઈટ સબપ્રોસેસ છે, જે પ્રોસેસિંગની સૌથી નાની એકમ છે જે એક સાથે ચાલતી પ્રક્રિયાઓની મંજૂરી આપે છે.

આકૃતિ: થ્રેડ જીવનચક્ર

  • New: થ્રેડ બનેલ છે પણ શરૂ થયેલ નથી
  • Runnable: CPU સમય મળે ત્યારે ચાલવા તૈયાર
  • Running: હાલમાં ચાલી રહ્યું છે
  • Blocked/Waiting: અસ્થાયી રૂપે નિષ્ક્રિય
  • Terminated: કાર્ય પૂર્ણ થયેલ છે

મેમરી ટ્રીક: "NRRBT: New Runnable Running Blocked Terminated"

પ્રશ્ન 4(ક) [7 ગુણ]

જાવામાં એક પ્રોગ્રામ લખો જે Thread Class નો અમલ કરીને બહુવિધ થ્રેડો બનાવે છે.

જવાબ: Thread class ને અમલ કરીને થ્રેડ બનાવવાથી ઘણા કાર્યો એક સાથે ચલાવી શકાય છે.

કોડ બ્લોક:

Java
  • Thread વિસ્તારો: Thread class વિસ્તારી થ્રેડ બનાવો
  • run() ઓવરરાઈડ: run મેથડમાં કાર્ય વ્યાખ્યાયિત કરો
  • start(): થ્રેડ ચલાવવાનું શરૂ કરો

મેમરી ટ્રીક: "ERS: Extend Run Start થ્રેડ બનાવવા માટે"

પ્રશ્ન 4(અ OR) [3 ગુણ]

યોગ્ય ઉદાહરણ સાથે final class સમજાવો.

જવાબ: Final class નો વારસો મળી શકતો નથી, જેથી તેના ડિઝાઈનમાં ફેરફાર અને વિસ્તરણ અટકાવે છે.

કોષ્ટક: Final Class લક્ષણો

ફીચરવર્ણન
ઇનહેરીટન્સસબક્લાસ બનાવી શકાતો નથી
મેથડ્સઅંતર્નિહિત final છે
સુરક્ષાડિઝાઈન ફેરફારને રોકે છે
ઉદાહરણString, Math ક્લાસ

કોડ બ્લોક:

Java
  • સુરક્ષા: સંવેદનશીલ અમલીકરણનું રક્ષણ કરે છે
  • અપરિવર્તનશીલતા: અપરિવર્તનશીલ ક્લાસ બનાવવામાં મદદ કરે છે
  • ઓપ્ટિમાઈઝેશન: JVM final ક્લાસને ઓપ્ટિમાઈઝ કરી શકે છે

મેમરી ટ્રીક: "SIO: સુરક્ષા અપરિવર્તનશીલતા ઓપ્ટિમાઈઝેશન"

પ્રશ્ન 4(બ OR) [4 ગુણ]

યોગ્ય ઉદાહરણ સાથે thread ની પ્રાથમિકતાઓ સમજાવો.

જવાબ: થ્રેડ પ્રાથમિકતાઓ નક્કી કરે છે કે થ્રેડ્સને અમલીકરણ માટે કયા ક્રમમાં શેડ્યુલ કરવા, 1 (ન્યૂનતમ) થી 10 (ઉચ્ચતમ).

કોષ્ટક: થ્રેડ પ્રાયોરિટી નિયતાંકો

નિયતાંકમૂલ્યવર્ણન
MIN_PRIORITY1ન્યૂનતમ પ્રાથમિકતા
NORM_PRIORITY5ડિફોલ્ટ પ્રાથમિકતા
MAX_PRIORITY10ઉચ્ચતમ પ્રાથમિકતા

કોડ બ્લોક:

Java

મેમરી ટ્રીક: "HNL: ઉચ્ચ સામાન્ય નિમ્ન પ્રાથમિકતાઓ થ્રેડ્સમાં"

પ્રશ્ન 4(ક OR) [7 ગુણ]

Exception શું છે? Arithmetic Exception નો ઉપયોગ દર્શાવતો પ્રોગ્રામ લખો.

જવાબ: Exception એ અસામાન્ય સ્થિતિ છે જે પ્રોગ્રામના સામાન્ય પ્રવાહને વિક્ષેપિત કરે છે.

આકૃતિ: Exception હાયરાર્કી

કોડ બ્લોક:

Java
  • Try Block: એવો કોડ ધરાવે છે જે exception ફેંકી શકે છે
  • Catch Block: ચોક્કસ exception હેન્ડલ કરે છે
  • Finally Block: exception ફેંકાય કે ન ફેંકાય, હંમેશા ચાલે છે

મેમરી ટ્રીક: "TCF: Try Catch Finally exceptions હેન્ડલ કરે છે"

પ્રશ્ન 5(અ) [3 ગુણ]

એરેની 10 સંખ્યાઓનો સરવાળો અને સરેરાશ શોધવા માટેનો જાવા પ્રોગ્રામ લખો.

જવાબ: એરે એક જ પ્રકારની ઘણી કિંમતો સંગ્રહે છે, જે તત્વોની ક્રમિક પ્રક્રિયા કરવાની મંજૂરી આપે છે.

કોડ બ્લોક:

Java
  • ઘોષણા: નિશ્ચિત-કદના સંગ્રહ બનાવે છે
  • પુનરાવર્તન: તત્વોનો ક્રમિક એક્સેસ
  • ગણતરી: પરિણામો માટે મૂલ્યો પર પ્રક્રિયા કરો

મેમરી ટ્રીક: "DIC: Declare Iterate Calculate એરે પ્રોસેસિંગ માટે"

પ્રશ્ન 5(બ) [4 ગુણ]

'DivideByZero' એરર માટે યુઝર ડિફાઈન્ડ Exception હેન્ડલ કરવા માટે જાવા પ્રોગ્રામ લખો.

જવાબ: યુઝર-ડિફાઈન્ડ exception ચોક્કસ એપ્લિકેશન જરૂરિયાતો માટે કસ્ટમ exception પ્રકારો બનાવવાની મંજૂરી આપે છે.

કોડ બ્લોક:

Java
  • કસ્ટમ ક્લાસ: Exception ક્લાસ વિસ્તારે છે
  • ફેંકવું: throw કીવર્ડનો નવા ઇન્સ્ટન્સ સાથે ઉપયોગ કરો
  • હેન્ડલિંગ: ચોક્કસ exception પ્રકાર પકડો

મેમરી ટ્રીક: "CTE: Create Throw Exception જ્યારે જરૂર હોય"

પ્રશ્ન 5(ક) [7 ગુણ]

ટેક્સ્ટ ફાઇલ બનાવવા માટે જાવા પ્રોગ્રામ લખો અને ટેક્સ્ટ ફાઇલ પર રીડ ઑપરેશન કરો.

જવાબ: જાવા I/O ક્લાસ ફાઇલો સાથે કામ કરવા માટે સગવડ આપે છે, જે સર્જન, લેખન અને વાંચન ઓપરેશન્સની મંજૂરી આપે છે.

કોડ બ્લોક:

Java
  • FileWriter: ફાઇલો બનાવે અને લખે છે
  • FileReader: ફાઇલોમાંથી અક્ષર ડેટા વાંચે છે
  • BufferedReader: લાઇન દ્વારા ટેક્સ્ટ કાર્યક્ષમતાથી વાંચે છે

મેમરી ટ્રીક: "WRC: Write Read Close ફાઇલ ઓપરેશન્સ માટે"

પ્રશ્ન 5(અ OR) [3 ગુણ]

Java I/O પ્રક્રિયા સમજાવો.

જવાબ: Java I/O પ્રક્રિયામાં સ્ટ્રીમ્સનો ઉપયોગ કરીને વિવિધ સ્રોતોથી ડેટા ટ્રાન્સફર કરવાનો સમાવેશ થાય છે.

કોષ્ટક: Java I/O સ્ટ્રીમ પ્રકારો

વર્ગીકરણપ્રકારો
દિશાઇનપુટ, આઉટપુટ
ડેટા પ્રકારબાઇટ સ્ટ્રીમ્સ, કેરેક્ટર સ્ટ્રીમ્સ
કાર્યક્ષમતાબેઝિક, બફર્ડ, ડેટા, ઓબ્જેક્ટ

આકૃતિ: Java I/O હાયરાર્કી

goat
  • સ્ટ્રીમ: સ્રોત અને લક્ષ્ય વચ્ચે વહેતા ડેટાની શ્રેણી
  • બફરિંગ: ડિસ્ક એક્સેસ ઘટાડીને કાર્યક્ષમતા સુધારે છે

મેમરી ટ્રીક: "SBI: સ્ટ્રીમ બફર્ડ ઇનપુટ/આઉટપુટ"

પ્રશ્ન 5(બ OR) [4 ગુણ]

Exception હેન્ડલિંગમાં throw અને finally ઉદાહરણ સાથે સમજાવો.

જવાબ: Exception હેન્ડલિંગ મેકેનિઝમ્સ ભૂલો દરમિયાન પ્રોગ્રામ ફ્લોને નિયંત્રિત કરે છે, સુંદર અમલીકરણ સુનિશ્ચિત કરે છે.

કોષ્ટક: throw vs finally

ફીચરthrowfinally
હેતુસ્પષ્ટપણે exception ફેંકે છેકોડ અમલીકરણ સુનિશ્ચિત કરે છે
સ્થાનમેથડની અંદરtry-catch બ્લોક્સ પછી
અમલીકરણશરત પૂરી થાય ત્યારેreturn હોય તો પણ હંમેશા
ઉપયોગકંટ્રોલ ફ્લોરિસોર્સ ક્લીનઅપ

કોડ બ્લોક:

Java

મેમરી ટ્રીક: "TERA: Throw Exception, Regardless Always, finally હંમેશા ચાલે છે"

પ્રશ્ન 5(ક OR) [7 ગુણ]

ટેક્સ્ટ ફાઇલ ના કન્ટેન્ટ ડિસ્પ્લે કરવા અને ટેક્સ્ટ ફાઇલ પર એપેન્ડ ઓપરેશન કરવા માટે જાવા પ્રોગ્રામ લખો.

જવાબ: જાવામાં ફાઇલ ઓપરેશન્સ ફાઇલ કન્ટેન્ટને હેરફેર કરવાની મંજૂરી આપે છે, નવા ડેટા ઉમેરવા સહિત.

કોડ બ્લોક:

Java
  • FileWriter(file, true): બીજો પેરામીટર એપેન્ડ મોડ સક્ષમ કરે છે
  • BufferedReader: લાઇન દ્વારા ટેક્સ્ટને કાર્યક્ષમતાથી વાંચે છે
  • ફરીથી વાપરી શકાય તેવી મેથડ: વાચન કાર્યક્ષમતાને સંકલિત કરે છે

મેમરી ટ્રીક: "CAD: Create Append Display ફાઇલ ઓપરેશન્સ"