CodeGym /Java Blog /Random /Lumang Antas 02
John Squirrels
Antas
San Francisco

Lumang Antas 02

Nai-publish sa grupo

CodeGym – pag-aaral ng programming sa Java

Lumang Antas 02 - 1Paano ang tungkol sa isang ganap na bagong paraan upang pag-aralan ang programming at makakuha ng edukasyon? Parang hindi yan nakita mo dati. Paano ang pag-aaral, kung saan mayroon kang layunin, paraan at resulta? Ikinagagalak kong ipakita sa iyo ang mga bagong online na kurso sa programming para sa pag-aaral ng Java.

1 Ang pagsasanay ay isang online na laro

Kumuha ka ng isang gawain, isagawa ito at makakuha ng gantimpala. Sa tingin ko ito ay malinaw at karaniwan para sa iyo. Ang mga gawain ay pinaka-iba't-iba: pagbabasa ng code, paglutas ng mga gawain, mga video-aralin, pagwawasto ng mga error sa code, pagdaragdag ng mga bagong feature, malalaking gawain, pagsusulat ng mga laro at marami pa.

2 Tanging ang mga pangunahing bagay

Upang ang kurso ay hindi tumagal ng 5 taon, itinapon ko ang lahat ng kapaki-pakinabang at iniwan lamang ang pinaka-kinakailangang mga bagay mula dito. Sinuri ko ang sampu ng mga bakante sa merkado ng paggawa. Lahat ng mga paksang kailangang malaman ng newbie para makakuha ng trabaho sa Java Junior Developer ay kasama sa kurso.

3 Nilapitan ko nang lubusan ang iyong pagsasanay

Ang isang kumpletong kurso ay naglalaman ng 500 mini-lecture at 1200 (!) praktikal na gawain . Ang mga gawain ay maliit, ngunit sila ay marami. Mayroong isang mahusay na deal sa kanila. Sa minimum na iyon, kung saan gagawin, makakakuha ka ng ganoong mahalagang karanasan. Mayroon ding trabahong magkapares, iba't ibang laro, malalaking gawain, totoong proyekto at iba pang uri ng pagsasanay.

4 Hindi mo maaaring tapusin ang laro at hindi maging isang developer

Ang kurso ay naglalaman ng 40 mga antas. Maaari kang lumipat sa susunod na antas, kung nalutas mo lamang ang mas malaking bahagi ng mga gawain sa kasalukuyang antas. Nagsisimula sa maliit at madali, nagtatapos sa malaki at lubhang kapaki-pakinabang. Ang bawat tao na umabot sa dulo ay makakakuha ng 300-500 oras ng praktikal na karanasan. At ito ay nagbibigay ng magandang pagkakataon na manalo. At para makakuha ng trabaho.

5 Paghahanda para sa pakikipanayam sa trabaho na nakatuon sa layunin

Ang huling 10 antas ay nakatuon sa pagsusulat ng resume, sa paghahanda para sa interbyu at pagkuha ng mga kasanayan sa team-work. Ang mga video ng mga panayam sa trabaho at ang kanilang pagsusuri ay idadagdag. Well at, tiyak, karaniwang mga tanong sa pakikipanayam na may mga sagot. Lumang Antas 02 - 2

6 Maaari mong lutasin ang mga gawain nang direkta sa site

Ito ay napaka-madaling gamitin at epektibo. Ang pagkakaroon ng pagsusuri ng isang bagong gawain sa panayam ay kailangan mong gumawa ng iyong sarili sa pamamagitan ng pagkakatulad dito mismo, sa site. Para sa mga gustong gawin ang gawain sa IDE mayroong isang plugin na nagbibigay-daan sa iyo upang makatanggap ng isang gawain sa dalawang pag-click at ibigay ito para sa pag-check sa isa . Mga lektura, pagsusuri ng mga halimbawa, paglutas ng mga gawain nang direkta sa isang web-site, paglutas ng mga gawain sa IDE - isang agwat sa pagitan ng teorya at kasanayan ay kasing manipis ng dati.

7 Instant na pagsusuri sa gawain (wala pang segundo)

Pamilyar ka ba sa sitwasyon, kapag nag-abot ka ng isang gawain/trabaho para sa pagsusuri, at kinailangan mong maghintay para sa mga resulta sa loob ng isang linggo, dahil abala ang taong nagsuri nito? Ito lang ang kaso sa karamihan ng mga offline na kurso. Sa CodeGym makakakuha ka ng mga resulta ng pag-compile at pagsuri ng iyong solusyon sa gawain nang wala pang isang segundo, pagkatapos na pindutin ang pindutan ng «Ipatupad/Suriin».

Gustung-gusto ito ng 8 CodeGym, kapag gumugugol ka ng oras sa Facebook habang nag-aaral

Sa Facebook mayroong isang pahina na nakatuon sa proyekto. Sa loob nito ay makakahanap ka ng mga kawili-wiling teknikal na artikulo, mga kwentong pangganyak, balita ng CodeGym at maraming iba pang kapaki-pakinabang na impormasyon.

9 Saklaw

Sa mga lektura mayroong maraming mga sanggunian sa iba't ibang mga web-site, kung saan maaari mong basahin ang mga paliwanag ng iba pang mga lecturer. Ang layunin ko ay maunawaan mo ang materyal, hindi makinig lamang sa akin.

10 Kakailanganin mo lamang ang iyong utak at computer upang maging isang developer

Aabutin ka ng 3 hanggang 6 na buwan, depende sa kung gaano katagal ang iyong pagsasanay.

11 Suporta

Lumang Antas 02 - 3Walang alinlangan na babangon ang mga tanong kapag nahaharap ka sa libu-libong gawain. Nagtatag kami ng isang espesyal na serbisyo, kung saan magagawa mong magtanong tungkol sa mga gawain. Iba pang mga CodeGym-estudyante, moderator, boluntaryo at founding member ng serbisyo ang sasagot sa iyo.

12 Komunidad

Naniniwala kami na ang lakas ay nasa pagkakaisa. Samakatuwid nilikha namin ang Komunidad, kung saan maaari kang magtanong; talakayin ang iba't ibang paksa, magbahagi ng mga artikulo at blog. Bukod, ang isang komunidad ay ang perpektong lugar upang makakuha ng trabaho sa kakilala. Kaya't huwag mag-atubiling magtanong ng matatalinong tanong at magbigay ng matalinong mga sagot. Kung mas aktibo kang kumilos at tumulong sa iba, mas maraming pagkakataon, na imumungkahi ka ng ibang miyembro ng asosasyon na sumali sa kanilang proyekto.

Naabot mo ang isang bagong antas

Level 2

Lumang Antas 02 - 4

1 Elly, ang batayan ng lahat

- Uy, Amigo. Ngayon gusto kong sabihin sa iyo kung paano nakabalangkas ang isang tipikal na programa ng Java . Ang punto ay ang bawat programa ng Java ay binubuo ng mga klase at bagay . - Alam ko na kung anong mga klase. At ano ang mga bagay? - Sa pamamagitan ng pagkakatulad sa pagbuo ng isang maliit na barko, una, kailangan mong gumawa ng isang guhit, at pagkatapos ay ibigay ito sa shipyard. Batay sa pagguhit na ito isang barko ang bubuuin. O limang barko. Sa totoo lang, sa dami ng gusto mo. Dose-dosenang magkaparehong mga barko ang binuo batay sa isang guhit, iyon ang tungkol sa lahat! - Ang lahat ng mga bagay sa Java programming ay eksaktong pareho. - Ang programmer ay parang isang design engineer. At kung ang inhinyero ng disenyo ay kailangang gumawa ng mga guhit, ang Java programmer ay kailangang magsulat ng mga klase. Pagkatapos, ang mga bahagi ay ginawa batay sa mga guhit, at ang mga bagay ay ginawa batay sa mga klase. - Una, nagsusulat kami ng mga klase (gumawa ng mga guhit), at sa paglaon sa runtime ng programa, ang Java Virtual Machine ay lumilikha ng mga bagay gamit ang mga klase na ito. Sa parehong paraan na ginawa ang mga barko. May isang drawing at maraming barko. Mayroong iba't ibang mga sasakyang-dagat na may iba't ibang pangalan at nagdadala ng iba't ibang mga kargamento. Gayunpaman, magkatulad sila: lahat sila ay may parehong istraktura at maaaring gumanap ng parehong mga gawain. - Sa kaso ng mga barko, malinaw ang lahat. Bigyan mo ako ng ilang higit pang mga paghahambing upang maunawaan nang eksakto kung tungkol saan ito? - Oo naman. Halimbawa, mga bubuyog ... Lumang Antas 02 - 5- Naku, maghintay sandali, ang mga bubuyog ay nagpapaalala sa akin ng isang bagay na masama. Mag-isip ng isang anthill. - Ang anthill ay isang magandang halimbawa ng pakikipag-ugnayan ng bagay. Sa pinakasimpleng anthill, may tatlong klase ng langgam: isang reyna, sundalo at manggagawang langgam. Mayroong pagkakaiba sa bilang ng mga langgam para sa bawat klase. Ang reyna ay nag-iisa sa pugad; may mga pulutong ng mga sundalo at daan-daang nagtatrabaho langgam. Kaya, maaari nating sabihin, mayroong tatlong klase at daan-daang mga bagay. Ang mga langgam ay nakikipag-usap sa isa't isa, sa parehong mga langgam at mga langgam ng ibang mga klase ayon sa mahigpit na mga patakaran. - Ito ay isang perpektong halimbawa. Para sa isang tipikal na programa, ito ay pareho. Ang isang pangunahing bagay ay lumilikha ng mga bagay ng lahat ng iba pang mga klase. Ang mga bagay ay nagsisimulang makipag-ugnayan sa isa't isa at "ang panlabas na mundo" ng isang programa. Ang pag-uugali ng mga bagay ay naka-hardcode sa loob ng mga ito. - Hindi ko masyadong maintindihan. Sa halip, hindi maintindihan. - Ang dalawang paliwanag na ito ay magkaibang panig ng parehong barya. Ang katotohanan ay nasa pagitan. Ang unang halimbawa (ang may pagguhit at mga barko) ay nagpapakita ng kaugnayan sa pagitan ng klase at ng mga bagay ng klase na ito. Napakalapit ng pagkakahawig. Ang pangalawang halimbawa (ang may anthill) ay nagpapakita ng kaugnayan sa pagitan ng mga nakasulat na klase at mga bagay na umiiral sa runtime. - Ibig mo bang sabihin na kailangan muna nating magsulat ng mga klase para sa lahat ng mga bagay na umiiral sa isang programa at higit pa, ilarawan ang kanilang pakikipag-ugnayan? - Oo, ngunit ito ay mas madali kaysa sa tila. Sa Java, ang lahat ng bagay sa runtime ng programa ay mga bagay, at kapag isinulat mo ang programa, dapat mong ilarawan ang iba't ibang paraan ng pakikipag-ugnayan ng bagay. Ang mga bagay ay tumatawag lamang sa mga pamamaraan ng bawat isa at ipasa ang kinakailangang data sa kanila. - Ito ay hindi halata, ngunit halos malinaw. - Ngunit paano mo malalaman kung anong mga pamamaraan ang tatawagan at anong data ang kailangan mong ipasa sa mga pamamaraan? - Ang bawat klase ay may paglalarawan nito upang tukuyin kung para saan ang klase ay nilikha. Ang bawat pamamaraan ay mayroon ding paglalarawan kung ano ang ginagawa nito at kung anong data ang dapat ipadala dito. Upang magamit ang klase, kailangan mong malaman sa pangkalahatan kung ano ang ginagawa nito. Bukod dito, kailangan mong malaman nang eksakto kung ano ang ginagawa ng bawat pamamaraan ng klase na ito. Ngunit hindi mo kailangang malaman kung paano ito ginagawa . Ito ay isang uri ng mahika. - Hump. Parang ganun.   - Dito, tingnan ang isang code ng klase na kumukopya ng file: Lumang Antas 02 - 6- Hindi ganoon kadali, ngunit nakuha ko na ang larawan. - Ayos. See you later, alligator!

2 Risha, Variable at primitive na uri

- Hoy ikaw, libreng paggawa. - Ibig kong sabihin, "Hi, Amigo". Gusto kong ipakilala sa iyo ang panloob na istraktura ng mga variable. Alam mo na na ang bawat variable ay may isang piraso ng memory na nauugnay dito, kung saan iniimbak ng variable ang halaga nito. - Oo. Sinabi mo ito last time. - Ayos. Buti na lang naalala mo. Pagkatapos ay itutuloy ko. - mga klase . Kapag naglalarawan kami ng bagong klase sa isang programa, nangangahulugan ito na nagdedeklara kami ng bagong kumplikadong uri ng tambalan , na ang data ay alinman sa iba pang kumplikadong uri o primitive na uri. Lumang Antas 02 - 7- Ito ay malinaw pa rin para sa isang pagtataka. - Dahil ang malalaking (kumplikadong) uri ay binubuo ng maraming maliliit (primitive), ang kanilang mga bagay ay gumagamit ng maraming memorya. Higit sa karaniwang ginagawa ng mga primitive na uri ng mga variable. Minsan marami pa. Ang pagtatalaga ng mga kumplikadong uri ng mga variable ay tumagal ng maraming oras at nangangailangan ng pagkopya ng malaking halaga ng memorya. Iyon ang dahilan kung bakit ang mga kumplikadong uri ng mga variable ay hindi nag-iimbak ng object mismo, ngunit isang object reference lamang (iyon ay isang apat na byte na address). Ito ay sapat na upang ma-access ang object data. Tinatanggap ni JVM ang lahat ng mga paghihirap na nauugnay dito. - Hindi ko maintindihan. - Napag-usapan na natin na ang variable ay parang kahon. Upang mag-imbak ng 13 sa loob nito, maaari mong isulat ang numero sa isang sheet ng papel at ilagay ito sa isang kahon. - Ngayon isipin na kailangan mong mag-imbak sa isang kahon (variable) ng isang bagay na medyo mas malaki. Halimbawa, isang aso, isang kotse, o iyong kapitbahay na si Joe. Upang pasimplehin, magagawa mo ang isang madaling bagay: ilagay ang larawan ng aso sa halip na ang aso, ang plate number ng kotse sa halip na ang kotse, at ang numero ng telepono ni Joe ay nakasulat sa isang sheet ng papel sa halip na si Joe mismo. - Ngayon ay kumuha kami ng isang piraso ng papel at isulat ang numero ng telepono ni Joe dito. Ito ay tulad ng isang object reference. Kung lalabas tayo sa kahon ng isang sheet kung saan nakasulat ang numero ni Joe, gagawa ng mga kopya at ilagay sa ilang mga kahon, tataas ang mga sanggunian kay Joe, ngunit maaaring magkaroon lamang ng isang Joe. - Advantage ng naturang data storage ay iyonmaaaring mayroong maraming mga sanggunian at isang bagay lamang . - Ito ay nakakasabik. Oo nga pala, halos naiintindihan ko na. Sagutin lamang ang isa pang tanong: ano ang mangyayari kung magtatalaga ako ng kumplikadong uri ng variable sa isa pang kumplikadong uri ng variable? - Pagkatapos ang dalawang variable na ito ay maglalaman ng parehong address. At, samakatuwid, kung babaguhin mo ang data na nakaimbak sa isang kumplikadong uri ng variable, ang data ng isa pa ay mababago din . Dahil alam mo , mayroon lang talagang isang bagay na tinutukoy ng mga variable na tindahan. Gayunpaman, maaaring mayroong napakaraming mga variable na nag-iimbak ng mga sanggunian sa bagay. - At ano ang nakaimbak sa mga kumplikadong uri ng mga variable (sanggunian/uri ng klase) habang walang mga sanggunian sa bagay? Meron ba talagang ganyan? - Oo, Amigo. Inalis mo ang mga salita sa aking bibig. Pwede naman yun. Kung walang object reference sa reference (complex) type variable, ito ay nag-iimbak null , isang espesyal na «null reference». Sa katunayan, iniimbak lang nito ang address ng isang bagay na katumbas ng 0. Ngunit ang Java Virtual Machine ay hindi kailanman lumilikha ng mga bagay na may zero na address, samakatuwid lagi nitong alam na kung ang reference na variable ay 0, kung gayon walang bagay doon. Lumang Antas 02 - 8Naiintindihan ko ba ito? Ang mga variable ay nahahati sa dalawang uri - primitive at reference. Ang isang primitive na uri ng variable ay nag-iimbak ng isang halaga habang ang isang reference na uri ng variable ay nag-iimbak ng isang object reference. Ang mga primitive na uri ay int, char, boolean, at ilan pa. Ang natitira ay mga sanggunian na variable, sila ay nabuo gamit ang mga klase. - Tama iyan, anak.

3 Elly, Anong mga bagay ang

Lumang Antas 02 - 9- Heto na naman ang paborito mong guro. Dahil mabilis tayong nauuna, sasabihin ko sa iyo kung ano ang mga bagay at kung paano haharapin ang mga ito. - Upang lumikha ng anumang bagay, kailangan mong isulat ang pangalan ng uri ng bagay (klase) at ang keyword bago ito. Sabihin nating mayroon tayong klaseng Cat, kung gayon: Lumang Antas 02 - 10- Ano ang mangyayari kung gagawa ka lang ng isang bagay at hindi ito italaga [ang reference nito] sa anumang variable? - Kung gagawin mo ito, lilikha ng Java Virtual Machine ang bagay at agad itong idedeklarang basura (hindi ginagamit na bagay). Pagkaraan ng ilang sandali, tatanggalin nito ang bagay na iyon sa panahon ng pagkolekta ng basura. - Paano ko masisira ang bagay kung hindi ko na ito kailangan? - Hindi mo kaya.Sa sandaling walang variable na mag-imbak ng isang object reference, ang object ay i-flag bilang basura at sisirain ito ng JVM sa susunod na koleksyon ng basura. Hangga't mayroong kahit isang object reference, ituturing itong live at hindi masisira. Kapag gusto mong mabilis na sirain ang bagay, itakda ang lahat ng mga sanggunian nito sa null, iyon ay, magtalaga ng null na halaga sa lahat ng mga variable na tumutukoy sa bagay na iyon. - Nakuha ko. Mukhang hindi mahirap sa lahat pagkatapos ng nakaraang mga lektura. - Okay, pagkatapos narito ang ilang mga gawain para sa iyo upang mapabuti ang iyong mga kasanayan. Ang mga ito ay nasa System.out din. Ngunit sa paglaon ay magkakaroon ng mas mahirap. At maaari mong ipakita sa amin kung anong bakal ang ginawa mo.
Mga gawain
1 Sumulat ng isang programa na nagpapakita ng: «Hakbang-hakbang at ang bagay ay tapos na.».
2 Sumulat ng isang programa na nagpapakita ng 7 beses: «Ito ay uri ng masaya na gawin ang imposible.».
3 Sumulat ng isang programa na nagpapakita ng: «Palaging pagnanais na matuto ng isang bagay na kapaki-pakinabang.».

4 Risha, Visibility ng mga variable.

- Hi, paborito kong estudyante. Ngayon sasabihin ko sa iyo ang tungkol sa visibility ng mga variable . - Bakit, mayroon ding mga hindi nakikitang variable? - Hindi, makikita ang mga variable sa mga lugar ng code kung saan maa-access ang variable na iyon. Ang ilang mga variable ay maaaring ma-access mula sa kahit saan sa isang programa, ang iba ay nasa loob lamang ng kanilang klase, at ang ilang mga variable ay maaaring ma-access lamang sa loob ng isang paraan. - Halimbawa, hindi ka maaaring sumangguni sa variable bago ito ideklara. - Ito ay malinaw. - Narito ang ilang mga halimbawa: Lumang Antas 02 - 111 Ang isang variable na ipinahayag sa isang pamamaraan ay umiiral / ay makikita mula sa simula ng deklarasyon hanggang sa katapusan ng pamamaraan. 2 Ang isang variable na ipinahayag sa isang bloke ng code ay umiiral hanggang sa dulo ng bloke ng code na ito. 3 Mga variable - mga argumento ng pamamaraan - umiiral kahit saan sa loob ng saklaw ng pamamaraan. 4 Ang mga variable ng klase / object ay umiiral sa buong buhay ng kanilang object. Ang mga modifier ng espesyal na access na pampubliko at pribado ay nagkokontrol din sa kanilang visibility. 5 Ang mga static na variable ng klase ay umiiral sa runtime ng programa. Tinutukoy din ng mga modifier ng access ang kanilang visibility. - Gustung-gusto ko ang mga larawan, lahat ay nahuhulog sa lugar. - Mabuti para sa iyo, Amigo. Laging alam na ikaw ay isang matalinong tao. - Sasabihin ko rin sa iyo ang tungkol sa mga modifier ng access . Huwag masyadong matakot, hindi ito rocket science. Ito ang mga salitang pampubliko at pribado na nakikita mo. - Hindi ako natatakot, ang lamig lang dito. - Oo, sigurado. Maaari mong kontrolin ang access (visibility) ng mga pamamaraan at variable sa iyong klase mula sa iba pang mga klase. Para sa bawat paraan o variable, maaari kang tumukoy lamang ng isang access modifier. 1 Modifier public Maaaring ma-access ang variable, pamamaraan o klase na na-flag na may modifier public mula saanman sa programa. Ito ang pinakamataas na antas ng pagiging bukas, nang walang paghihigpit. 2 Modifier private Maa-access lang ang variable o method na na-flag na may modifier private mula sa klase kung saan ito idineklara. Para sa lahat ng iba pang mga klase, ang isang naka-flag na paraan o variable ay hindi nakikita, na parang wala ang mga ito. Ito ang pinakamataas na antas ng pagsasara (nakikita lamang mula sa parehong klase). 3 Modifier default Kung ang anumang modifier ay hindi nag-flag ng variable o paraan, ito ay itinuturing na isang modifier default. Ang mga variable o pamamaraan na may modifier na iyon (iyon ay, wala man lang) ay makikita ng lahat ng klase ng package kung saan sila idineklara. Sa parehong package lang. Ang modifier na ito ay kung minsan ay tinatawag na package upang ipahiwatig na ang pag-access sa mga variable at pamamaraan ay posible para sa buong package, kung saan ang kanilang klase ay kabilang sa Explanation tab: Lumang Antas 02 - 12

5 Diego, Mga Gawain para sa paglikha ng isang grupo ng mga variable

- Hoy, buddy. Kung kailangan, may hawak akong kopya ng kontrata para sa iyo. Ang palihim na cheapskate na si Risha ay walang kaalam-alam. Dapat nakita mo ang mga halaga sa aking kontrata. Heh, heh. - Magaling, Diego. Sa tingin ko, tinuturuan mo ako ng mga totoong kapaki-pakinabang na bagay. - Oo naman, Amigo. Walang pakinabang kung walang sakit. Ngunit mayroon pa ring nagdurusa sa sakit na walang pakinabang. - Mas mabuting magkamay tayo sa pag-aaral. Ngayon ay ipapakita ko sa iyo kung paano lumikha ng isang grupo ng mga variable sa iba't ibang paraan: Lumang Antas 02 - 13- Wow, Diego! Napakatalino mo. - Heh, heh! Salamat, Amigo. - Sa palagay ko ay napalampas mo na ang aking mga gawain. Kaya narito ang ilan sa kanila. Yung mga tao, alien, walang alam tungkol sa buhay-robo natin. Sinong magtuturo sayo niyan kundi ako?
Mga gawain
1 Sumulat ng isang programa na nagpapakita ng 3 beses: «Maraming tao ang nabubuhay dahil lang sa ilegal na barilin sila.».
2 Sumulat ng isang programa na nagpapakita ng: «Kung gusto ko ang iyong opinyon, hihilingin kong punan mo ang mga kinakailangang form.».
3 Sumulat ng isang programa na nagpapakita ng 20 beses: «Hindi ko sinabi ang karamihan sa mga bagay na sinabi ko.».

6 Elly, Pagpasa sa sanggunian. Mga variable ng sanggunian

- Hay, Amigo, ako na naman, Elly. Paumanhin, lagi kong sinasabi ito, ngunit ito lang ang paraan ng mga bagay na ginagawa sa Earth sa ika-31 siglo. Ipapaliwanag ko sa iyo ang mga feature ng reference variable at kung paano ipasa ang referential arguments sa mga function (paraan). - Handa na ako. - Kung gayon, ang mga reference na variable ay mga variable ng lahat ng uri maliban sa mga primitive. Ang mga variable na ito ay naglalaman lamang ng address ng object (object reference). - Ang mga variable ng primitive na uri ay nag-iimbak ng isang halaga at uri, at ang mga variable ng klase ay nag-iimbak ng mga sanggunian sa mga bagay ng parehong klase, well, o null. Tama ba ako? - Talagang. - Kaya, ano ang isang sanggunian? - Ang bagay at ang reference nito ay naka-link, sabihin natin, tulad ng isang lalaki at ang kanyang numero ng telepono. Ang numero ng telepono ay hindi isang lalaki, ngunit maaari itong gamitin upang tawagan ang isang lalaki upang humingi sa kanya ng isang bagay, gabayan o utusan siya. Ginagamit din ang isang sanggunian upang makipag-ugnayan sa isang bagay. Ang lahat ng mga bagay ay nakikipag-ugnayan sa isa't isa sa pamamagitan ng mga sanggunian. - Para bang nakikipag-usap ang mga tao sa isa't isa sa telepono? - Tama iyan. Kapag nagtalaga ka ng isang primitive na bagay, ang halaga nito ay kinokopya (doble). Kapag nagtalaga ka ng reference na variable, tanging ang object address (numero ng telepono) lamang ang makokopya, at hindi ang object mismo. - ОK, nakuha ko ito. - Nag-aalok ang isang reference ng isa pang kalamangan: maaari kang magpasa ng isang object reference sa anumang paraan, at ang pamamaraang ito ay magagawang baguhin (baguhin) ang aming object gamit ang reference nito sa pamamagitan ng pagtawag sa mga pamamaraan nito at pag-access ng data sa loob ng object. Lumang Antas 02 - 14- Ang mga halaga ng mga variable a & b ay ipinagpapalit sa loob ng paraan ng swap . Kapag tinawag mo ang paraan ng swap , ang mga variable na a & b ay tumatanggap ng mga kopya ng mga halaga m & n . Samakatuwid, ang mga halaga ng mga variable m & n ay nananatiling pareho kapag binago mo ang mga halaga ng a & b . Ito ay malinaw na nakikita sa code ng kanang hanay. - Sa totoo lang, wala akong nakuha niyan. Maaari ba akong magkaroon ng ilang higit pang mga halimbawa? - Sa kaso ng uri ng sanggunian, magagawa mo ito: Lumang Antas 02 - 15- Ang mga variable na a at b ay nakatalaga ng mga sanggunian sa emma at alice, ayon sa pagkakabanggit, ang mga halaga ng a at b ay nagbabago sa loob ng mga bagay na emma at alice. - Kaya posible na magdeklara ng mga klase sa loob ng iba pang mga klase, masyadong? Wow! - Tungkol naman sa iba, hindi malinaw. - Hindi lahat ng sabay-sabay.

7 Elly, Function call, return value

- Well, pagkatapos ay lumiko tayo. Pag-uusapan natin kung paano gumagana ang method call, at pagkatapos ay susubukan mong tingnan ang nakaraang lecture, okay? - Deal! - Well, pagkatapos ay sasabihin ko sa iyo ang tungkol sa function/paraan ng tawag at mga halaga na ibinalik. - Ang mga utos ay pinagsama-sama sa mga pag-andar, upang maaari mong patakbuhin ang mga ito sa isang bloke, bilang isang kumplikadong utos. Upang gawin ito, kailangan mong isulat ang pangalan ng function (paraan) at pagkatapos ay sa mga panaklong kasunod ng pangalan na tukuyin ang mga halaga at parameter. Lumang Antas 02 - 16- Sa halimbawa sa itaas, sumulat kami ng isang function na nagpapakita ng naipasa na string ng 4 na beses. Pagkatapos ay tinawag namin ang function na print4 sa linya 6. - Pagdating sa pagpapatupad ng linya 6, ang program ay talon sa linya 9, at ang s variable ay bibigyan ng isang halaga na " Gusto kong ilipat ito, ilipat ito." - Pagkatapos ang mga linya 11-14 ay isasagawa, at sa wakas, ang function ay kumpleto at ang programa ay magpapatuloy sa linya 7. - Gotcha. - Hindi mo lang maipapasa ang mga argumento (parameter) sa function, ngunit ibabalik din ang resulta (value) ng pagpapatakbo ng function. Ginagawa ito sa pamamagitan ng paggamit ng keyword return. Narito kung ano ang hitsura nito: Lumang Antas 02 - 17- Sa tingin ko ay nahuhuli ko ito. Ito ay ang parehong code sa kaliwa at sa kanan. Sa kaliwa, ipinakita lamang ito bilang isang hiwalay na function. - Kinakalkula ng function ang isang halaga at ipinapasa ito sa mga tumawag nito gamit ang return command. Sa tingin ko man lang. - Talaga, ito ay totoo. - At ano ang void type? - May ginagawa lang ang ilang function, ngunit huwag kalkulahin at ibalik ang anumang value, tulad ng aming method main(). Para sa mga function na iyon ay nilikha ang isang espesyal na uri ng resulta na walang bisa (isang walang laman na uri). - Bakit wala tayong matukoy, kung ang isang function ay hindi nagbabalik ng anuman? - Isipin lamang kung paano idineklara ang bawat variable: uri at pangalan. Ang isang function ay ipinahayag na may uri, pangalan, at panaklong. Ang pangalan ng function na sinusundan ng mga panaklong ay isang function na tawag! - Kaya mas madaling makabuo ng "walang laman na uri" kaysa hatiin ang mga function sa dalawang kategorya ang mga nagbabalik ng isang halaga at hindi nagbabalik ng isang halaga? - Eksakto! Mabilis kang mag-isip, anak ko. - At paano ko maibabalik ang isang walang laman na uri? - Hindi mo kaya. Narito kung paano ito gumagana: kapag ang JVM ay nagsagawa ng isang pagbabalikcommand, kinakalkula nito ang halaga ng expression sa kanan ng word return, iniimbak ang halagang iyon sa isang espesyal na lugar ng memorya at agad na lumabas sa function . Ginagamit nito ang naka-save na halaga bilang resulta ng isang function na tawag sa lugar kung saan tinawag ang function. Makikita mo ito sa halimbawa sa itaas. - Ang ibig mo bang sabihin ay ang lugar kung saan ang int m = min(a,b) ay naging m = m2 ? - Oo. Pagkatapos ng function call ang lahat ay patuloy na gumagana na parang sa halip na function ang resulta nito ay nakasulat sa parehong lugar. Basahin muli ang pangungusap na iyon at tingnan ang code ng huling halimbawa. - Parang madali lang, pero mahirap sa realidad. Kaunti lang ang nakuha ko, yun lang. - ayos lang.Sa unang pagsubok maiintindihan mo lamang ang alam mo na. Kapag mas nakapasok ka sa isang bagong lugar para sa iyo, mas hindi ito malinaw. At ang resulta ay magiging mas kahanga-hanga. Habang tumatagal, nagiging malinaw ang lahat. - Kung gayon, pagkatapos ay magpatuloy tayo.

8 Diego

- Uy, Amigo. Narito ang ilang gawain para sa iyo. Ngayon ay may kakayahan ka nang gumawa ng higit pa sa System.out. Gawin ang iyong makakaya! Naniniwala ako sa iyo!
Mga gawain
1 Minimum ng dalawang numero
Sumulat ng function na nagbabalik ng hindi bababa sa dalawang numero.
2 Maximum ng dalawang numero
Sumulat ng function na nagbabalik ng maximum na dalawang numero.
3 Minimum ng tatlong numero
Sumulat ng function na nagbabalik ng hindi bababa sa tatlong numero.
4 Pinakamababang apat na numero
Sumulat ng function na nagbabalik ng pinakamababang apat na numero.
Kailangang gamitin ng function na min(a,b,c,d) ang function na min(a, b)
5 Pagdoble ng string
Sumulat ng isang function na nagpapakita ng tatlong beses ang naipasa na string. Ang bawat string ay dapat nasa isang bagong linya.
6 Pagpapakita ng teksto
Sumulat ng isang function na nagpapakita ng ipinasang string (salita) nang tatlong beses sa parehong linya.
Ang mga salita ay dapat na pinaghihiwalay ng isang puwang at hindi kailangang pagsamahin sa isa.

9 Diego, Buong pangalan ng klase

Lumang Antas 02 - 18- Uy, Amigo, gusto kong sabihin sa iyo ang tungkol sa buong pangalan ng klase. - Alam mo na na ang mga klase ay nasa mga pakete. Kaya, ang buong pangalan ng klase ay isang pangalan na sumasaklaw sa lahat ng mga pakete na pinaghihiwalay ng mga puntos, at isang pangalan ng klase. Mga Halimbawa: Lumang Antas 02 - 19 - Upang magamit ang klase sa sarili mong code kailangan mong tukuyin ang buong pangalan nito. Gayunpaman, maaari kang gumamit ng isang maikling pangalan - isang pangalan ng klase lamang. Upang gawin ito kailangan mong "i-import" ang klase na ito sa pamamagitan ng pagtukoy sa pangalan nito sa pagdaragdag ng salitang import bago ka magdeklara ng isang klase. Ang mga klase ng java.lang (String, Integer,...) na package ay ini-import bilang default. Hindi mo kailangang tukuyin ang mga ito. Halimbawa: Lumang Antas 02 - 20- Isang halimbawa ng paggamit ng mga maikling pangalan: Lumang Antas 02 - 21- Nakuha ko ito. - Ayos.

10 Propesor, Lektura tungkol sa mga klase at bagay

Lumang Antas 02 - 22- Uy, Amigo. Sana naintindihan mo lahat ng sinabi sayo nina Elly at Risha ngayon. Para lamang maging ligtas, gaya ng ipinangako ko, narito ang mga link sa karagdagang materyal: 1 Aking mga tala 2 Pag-iisip sa Java. Ang kahanga-hangang aklat na iyon ay nasabi ko na sa iyo. Napakaganda kung babasahin mo ito. - Sana ay maglaan ka ng oras para tingnan ito. - Ahem. Sigurado gagawin ko!

11 Julio

- Hoy, Amigo! Sana ay para sa isang mahirap at nakakapagod na pahinga?

Mga komento
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION