Isa sa pinaka makabago ay ang konsepto ng mga pakete.Ang mga pakete sa Java ay isang paraan upang ma-encapsulate ang isang pangkat ng mga klase, interface, enumerasyon, anotasyon, at sub-package. Konseptwal, maaari mong isipin ang mga java packages na katulad sa iba't ibang mga folder sa iyong computer. Sa tutorial na ito, sasakupin namin ang mga pangunahing kaalaman sa mga pakete sa
Nakalista sa ibaba ang mga paksang sakop sa artikulong ito:
- Ano ang Package sa Java?
- Mga Built-in na Pakete
- Mga Pakete na Tinukoy ng Gumagamit
- Static na Pag-import sa Java
- Pag-access sa Proteksyon sa Mga Java Package
- Mga Puntong Dapat Tandaan
Ano ang Package sa Java?
Ang Java package ay isang mekanismo ng pagpapangkat ng magkatulad na uri ng mga klase, interface, at sub-class na magkakasama batay sa pagpapaandar. Kapag nakasulat ang software sa , maaari itong binubuo ng daan-daang o libu-libong mga indibidwal na klase. Akomakatuwiran upang mapanatili ang mga bagay na nakaayos sa pamamagitan ng paglalagay ng mga kaugnay na klase at interface sa mga pakete.
Ang paggamit ng mga pakete habang nag-aalok ang pag-coding ng maraming mga pakinabang tulad ng:
- Muling kakayahang magamit: Ang mga klase na nilalaman sa mga pakete ng isa pang programa ay maaaring madaling magamit muli
- Mga Salungat sa Pangalan: Mga paketetulungan kaming matukoy nang natatangi ang isang klase, halimbawa, maaari naming magkaroon kumpanya.sales.Employee at kumpanya.marketing. Empleyado mga klase
- Kontroladong Pag-access: Mga alok proteksyon sa pag-access tulad ng pumiikot na mga klase, mga default na klase at pribadong klase
- Encapsulasyon ng Data : Sila provide isang paraan upang itago ang mga klase, pinipigilan ang iba pang mga programa mula sa pag-access sa mga klase na inilaan para sa panloob na paggamit lamang
- Pagpapanatili: Sa mga pakete,maaari mong ayusin ang iyong proyekto nang mas mahusay at madaling hanapin ang mga kaugnay na klase
Mahusay na kasanayan na gumamit ng mga pakete habang naka-cod sa Java. Bilang isang programmer, maaari momadaling malaman ang , mga interface, enumerasyon, at anotasyon na nauugnay. Mayroon kaming dalawang uri ng mga pakete sa java.
Mga uri ng Pakete sa Java
Batay sa kung ang pakete ay tinukoy ng gumagamit o hindi, ang mga pakete ay nahahati sa dalawang kategorya:
- Mga Built-in na Pakete
- Mga Pakete na Tinukoy ng Gumagamit
Mga Built-in na Pakete
Ang mga naka-built na pakete o paunang natukoy na mga pakete ay ang mga sumasama bilang isang bahagi ng (Java Development Kit) upang gawing simple ang gawain ng Java programmer. Binubuo ang mga ito ng isang malaking bilang ng mga paunang natukoy na mga klase at interface na bahagi ng Java API's. Ang ilan sa mga karaniwang ginagamit na built-in na pakete ay java.lang, java.io, java.util, java.applet, atbp Narito ang isang simpleng programa na gumagamit ng built-in na pakete.
package Edureka import java.util.ArrayList class BuiltInPackage {public static void main (String [] args) {ArrayList myList = new ArrayList (3) myList.add (3) myList.add (2) myList.add (1) System. out.println ('Ang mga elemento ng listahan ay:' + myList)}}
Output:
Ang mga elemento ng listahan ay: [3, 2, 1]
Ang klase ng ArrayList ay kabilang sa java.util package. Upang magamit ito, kailangan naming i-import ang pakete gamit ang pahayag ng pag-import. Ang unang linya ng code import java.util.ArrayList ina-import ang java.util package at gamit na naroroon sa paggamit ng sub package.
Mga Pakete na Tinukoy ng Gumagamit
Ang mga pakete na tinukoy ng gumagamit ay ang mga binuo ng mga gumagamit upang maipangkat ang mga magkakaugnay na klase, interface at sub package. Sa tulong ng isang halimbawa ng programa, tingnan natin kung paano lumikha ng mga pakete, mag-ipon ng mga programang Java sa loob ng mga pakete at isagawa ang mga ito.
Lumilikha ng isang Pakete sa Java
Ang paglikha ng isang pakete sa Java ay isang napakadaling gawain. Pumili ng isang pangalan para sa pakete at isama ang a pakete utos bilang unang pahayag sa Java source file. Ang java source file ay maaaring maglaman ng mga klase, interface, enumerasyon, at uri ng anotasyon na nais mong isama sa package.Halimbawa, ang sumusunod na pahayag ay lumilikha ng isang pakete na pinangalanan MyPackage.
package na MyPackage
Tinukoy lamang ng pahayag ng package kung aling pakete ang tinukoy ng mga klase ay kabilang sa ..
Tandaan: Kung tinanggal mo ang pahayag ng package, ang mga pangalan ng klase ay inilalagay sa default na package, na walang pangalan. Kahit na ang default na pakete ay pagmultahin para sa mga maiikling programa, ito ay hindi sapat para sa totoong mga application.
Kasama ang isang Klase sa Java Package
Salumikha ng isang klase sa loob ng isang pakete, dapat moideklara ang pangalan ng package bilang unang pahayag ng iyong programa. Pagkatapos isama ang klase bilang bahagi ng package. Ngunit, tandaan na, ang isang klase ay maaaring magkaroon lamang ng isang pagpapahayag ng package. Narito ang isang simpleng programa upang maunawaan ang konsepto.
package MyPackage public class Paghambingin ang {int num1, num2 Compare (int n, int m) {num1 = n num2 = m} public void getmax () {if (num1> num2) {System.out.println ('Maximum na halaga ng dalawa ang mga numero ay '+ num1)} iba pa {System.out.println (' Ang maximum na halaga ng dalawang numero ay '+ num2)}} pampubliko na static na walang bisa (String args []) {Ihambing ang kasalukuyang [] = bagong Ihambing [3] kasalukuyang [1] = bagong Paghambing (5, 10) kasalukuyang [2] = bagong Paghambing (123, 120) para sa (int i = 1 i<3 i++) { current[i].getmax() } } }
Output:
Ang maximum na halaga ng dalawang numero ay 10 Maximum na halaga ng dalawang numero ay 123
Tulad ng nakikita mo, idineklara ko ang isang pakete na pinangalanang MyPackage at lumikha ng isang klase na Paghambingin sa loob ng package na iyon. Gumagamit ang Java ng mga direktoryo ng file system upang mag-imbak ng mga package. Kaya, ang program na ito ay nai-save sa isang file bilang Paghambingin.java at maiimbak sa direktoryo na pinangalanang MyPackage. Kapag naipon ang file, lilikha ang Java ng .klaseng file at iimbak ito sa parehong direktoryo. Tandaan na ang pangalan ng pakete ay dapat na kapareho ng direktoryo kung saan nai-save ang file na ito.
Maaaring nagtataka ka kung paano gamitin ang Ihambing ang klase mula sa isang klase sa isa pang pakete?
Lumilikha ng isang klase sa loob ng pakete habang nag-i-import ng isa pang pakete
Sa gayon, medyo simple ito. Kailangan mo lang i-import ito. Kapag na-import na, maaari mo itong ma-access sa pamamagitan ng pangalan nito. Narito ang isang sample na programa na nagpapakita ng konsepto.
package Edureka import MyPackage.Compare public class Demo {public static void main (String args []) {int n = 10, m = 10 Compare current = new Compare (n, m) if (n! = m) {current.getmax ()} iba pa {System.out.println ('Pareho ang mga halaga ay pareho')}}}
Output:
Parehas ang mga halaga ay pareho
Una kong idineklara ang package Edureka , pagkatapos ay na-import ang klase Ihambing mula sa package na MyPackage. Kaya, ang orderkapag lumilikha kami ng isang klase sa loob ng isang pakete habang ang pag-import ng isa pang pakete ay,
- Pagpapahayag ng Package
- Pag-import ng Package
Kaya, kung hindi mo nais na gamitin ang pahayag sa pag-import, mayroong isa pang kahalili upang ma-access ang isang file ng klase ng pakete mula sa isa pang pakete. Maaari mo lamang gamitin ang ganap na kwalipikadong pangalan habang nag-i-import ng a .
Paggamit ng ganap na kwalipikadong pangalan habang nag-i-import ng isang klase
Narito ang isang halimbawa upang maunawaan ang konsepto. Gagamitin ko ang parehong pakete na idineklara ko nang mas maaga sa blog, MyPackage .
package Edureka public class Demo {public static void main (String args []) {int n = 10, m = 11 // Paggamit ng ganap na kwalipikadong pangalan sa halip na i-import ang MyPackage.Compare current = new MyPackage.Compare (n, m) if ( n! = m) {current.getmax ()} iba pa {System.out.println ('Parehas ang mga halaga ay pareho')}}}
Output:
Ang maximum na halaga ng dalawang numero ay 11
Sa klase ng Demo, sa halip na i-import ang package, ginamit ko ang ganap na kwalipikadong pangalan tulad ng MyPackage.Compare upang likhain ang object nito. Dahil pinag-uusapan natin ang tungkol sa pag-import ng mga pakete, maaari mo ring suriin ang konsepto ng static na pag-import sa Java.
Static na Pag-import sa Java
Ang tampok na static na pag-import ay ipinakilala sa mula sa bersyon 5. Pinapabilis nito ang programmer ng Java na mag-access sa anumang staticdirekta ng miyembro ng isang klase nang hindi ginagamit ang buong kwalipikadong pangalan.
package MyPackage import static java.lang.Math. * // static import import static java.lang.System. * // static import public class StaticImportDemo {public static void main (String args []) {double val = 64.0 double sqroot = sqrt (val) // Access sqrt () paraan nang direkta out.println ('Sq. root ng' + val + 'ay' + sqroot) // Hindi namin kailangang gamitin ang 'System.out}}
Output:
Sq. ang ugat ng 64.0 ay 8.0
Bagaman ang paggamit ng static na pag-import ay nagsasangkot ng mas kaunting pag-coding, ang labis na paggamit nito ay maaaring gawing hindi mabasa at hindi maaabot ang programa. Ngayon, magpatuloy tayo sa susunod na paksa, i-access ang kontrol sa mga pakete.
Pag-access sa Proteksyon sa Mga Java Package
Maaari mong magkaroon ng kamalayan sa iba't ibang mga aspeto ng pag-access sa control mekanismo ng Java at nito pag-access sa mga specifier . Ang mga package sa Java ay nagdaragdag ng isa pang dimensyon upang ma-access ang kontrol. Ang parehong mga klase at mga pakete ay isang paraan ng encapsulation ng data . Habang ang mga pakete ay kumikilos bilang mga lalagyan para sa mga klase at iba pang mga nasasakupang pakete, ang mga klase ay kumikilos bilang mga lalagyan para sa data at code. Dahil sa interplay na ito sa pagitan ng mga pakete at klase, tinutugunan ng mga Java packages ang apat na kategorya ng kakayahang makita para sa mga miyembro ng klase:
- Mga sub-klase sa parehong pakete
- Non-subclass sa parehong pakete
- Mga sub-klase sa iba't ibang mga pakete
- Mga klase na wala sa parehong pakete o mga sub-klase
Ang talahanayan sa ibaba ay nagbibigay ng atotoong larawan ng aling uri ng pag-access ang posible at alin ang hindi kapag gumagamit ng mga pakete sa Java:
php i-convert ang array sa object
Pribado | Walang Modifier | Protektado | Pampubliko | |
Parehong klase | Oo | Oo | Oo | Oo |
Parehong Mga Subclass ng Package | Hindi | Oo | Oo | Oo |
Parehong Package Non-Subclass | Hindi | Oo | Oo | Oo |
Iba't ibang Mga Subclass ng Pakete | Hindi | Hindi | Oo | Oo |
Iba't ibang Mga Pakete Hindi- Subclass | Hindi | Hindi | Hindi | Oo |
Maaari naming gawing simple ang data sa talahanayan sa itaas tulad ng sumusunod:
- Anumang ipinahayag na pampubliko ay maaaring ma-access mula sa kahit saan
- Anumang ipinahayag na pribado ay makikita lamang sa loob ng klaseng iyon
- Kung ang pagbanggit ng access ay hindi nabanggit, ang isang elemento ay nakikita sa mga subclass pati na rin sa iba pang mga klase sa parehong pakete
- Panghuli, ang anumang ipinahayag na protektadong elemento ay makikita sa labas ng iyong kasalukuyang package, ngunit sa mga klase lamang na direktang nai-subclass ang iyong klase
Sa ganitong paraan, nagbibigay ang Java packages ng kontrol sa pag-access sa mga klase. Sa gayon, binabalot nito ang konsepto ng mga pakete sa Java. Narito ang ilang mga puntos na dapat mong tandaan kapag gumagamit ng mga pakete .
Mga Puntong Dapat Tandaan
- Ang bawat klase ay bahagi ng ilang package. Kung tinanggal mo ang pahayag ng package, ang mga pangalan ng klase ay inilalagay sa default na package
- Ang isang klase ay maaaring magkaroon lamang ng isang pahayag ng package ngunit maaari itong magkaroon ng higit sa isang mga pahayag sa pag-import ng package
- Ang pangalan ng pakete ay dapat na kapareho ng direktoryo kung saan nai-save ang file
- Kapag nag-import ng isa pang pakete, ang pagpapahayag ng package ay dapat na ang unang pahayag, na sinusundan ng pag-import ng package
Kaya, dinadala tayo nito sa katapusan ng artikulong 'Mga Pakete sa Java'. Natutunan naminano ang isang pakete at kung bakit natin dapat gamitin ang mga ito. Walang duda na ang Java package ay isa sa pinakamahalagang bahagi para sa mahusay na mga programmer ng java. Hindi lamang nito ina-upgrade ang istilo ng pag-cod ng programmer ngunit binabawasan din ang maraming karagdagang trabaho.
Kung nakita mo ang artikulong ito sa 'Mga Pakete sa Java', tingnan ang ni Edureka, isang pinagkakatiwalaang kumpanya sa pag-aaral sa online na may isang network na higit sa 250,000 nasiyahan na mga nag-aaral na kumalat sa buong mundo. Narito kami upang matulungan ka sa bawat hakbang sa iyong paglalakbay, para sa pagiging isang bukod sa mga katanungang ito sa panayam sa java, nakakakuha kami ng isang kurikulum na idinisenyo para sa mga mag-aaral at propesyonal na nais na maging isang Java Developer.