CodeGym/Java Blogu/Rastgele/Eski Seviye 02
John Squirrels
Seviye
San Francisco

Eski Seviye 02

grupta yayınlandı

CodeGym – Java'da programlama öğrenmek

Eski Seviye 02 - 1Programlama eğitimi almanın ve eğitim almanın tamamen yeni bir yoluna ne dersiniz? Bu daha önce gördüğün hiçbir şeye benzemiyor. Hedef, araç ve sonucun olduğu yerde öğrenmeye ne dersiniz? Size Java öğrenmek için yeni çevrimiçi programlama kurslarını sunmaktan mutluluk duyuyorum.

1 Eğitim bir çevrimiçi oyundur

Bir görevi alıyorsun, yerine getiriyorsun ve bir ödül alıyorsun. Bence sizin için açık ve yaygın. Görevler çok çeşitlidir: kod okuma, görevleri çözme, video dersleri, koddaki hataları düzeltme, yeni özellikler ekleme, büyük görevler, oyun yazma ve çok daha fazlası.

2 Sadece temel ihtiyaçlar

Kursun 5 yıl sürmemesi için faydalı olan her şeyi attım ve sadece en gerekli şeyleri bıraktım. İşgücü piyasasındaki onlarca açık pozisyonu inceledim. Yeni başlayanların Java Junior Developer işi almak için bilmesi gereken tüm konular kursa dahildir.

3 Eğitiminize iyice yaklaştım

Eksiksiz bir kurs 500 mini ders ve 1200 (!) pratik görev içerir . Görevler küçük ama çoktur. Birçoğu var. Sadece bu minimum, bunu yaparak çok değerli bir deneyim elde edeceksiniz. Ayrıca çiftler halinde çalışma, farklı oyunlar, büyük görevler, gerçek projeler ve diğer uygulama türleri de vardır.

4 Oyunu bitirip geliştirici olamazsınız

Kurs 40 seviye içerir. Yalnızca mevcut seviyedeki görevlerin büyük bir bölümünü çözdüyseniz bir sonraki seviyeye geçebilirsiniz. Küçük ve kolay ile başlayıp, büyük ve çok kullanışlı ile biten. Sona ulaşan her kişi 300-500 saatlik pratik deneyim kazanacak. Bu da büyük bir kazanma şansı veriyor. Ve bir iş bulmak için.

5 Hedef odaklı iş görüşmesi hazırlığı

Son 10 seviye özgeçmiş yazmaya, mülakata hazırlanmaya ve takım çalışması becerilerini kazanmaya ayrılmıştır. İş görüşmelerinin videoları ve analizleri eklenecektir. Pekala ve kesinlikle, cevaplarla röportajdaki tipik sorular. Eski Seviye 02 - 2

6 Görevleri doğrudan sitede çözebilirsiniz

Çok kullanışlı ve etkilidir. Derste yeni bir görevi analiz ettikten sonra, tam burada, sitede benzetme yoluyla kendi görevinizi yapmanız gerekir. Görevi IDE'de yapmak isteyenler için, bir görevi iki tıklamayla almanızı ve bir tıklamayla teslim etmenizi sağlayan bir eklenti var . Anlatım, örneklerin analizi, görevleri doğrudan bir web sitesinde çözme, görevleri IDE'de çözme - teori ve pratik arasındaki boşluk hiç olmadığı kadar ince.

7 Anında görev kontrolü (saniyeden daha kısa sürede)

Bir görevi/işi kontrol için teslim ettiğinizde ve onu kontrol eden kişi meşgul olduğu için sonuçları bir hafta beklemek zorunda kaldığınızda duruma aşina mısınız? Çoğu çevrimdışı kursta durum böyledir. CodeGym'de, bir «Yürüt/Kontrol Et» düğmesine bastıktan sonra, görev çözümünüzü derleme ve kontrol etme sonuçlarını bir saniyeden daha kısa sürede alacaksınız.

8 CodeGym, ders çalışırken Facebook'ta vakit geçirmenize bayılıyor

Facebook'ta projeye ayrılmış bir sayfa var. İçinde ilginç teknik makaleler, motive edici hikayeler, CodeGym haberleri ve diğer pek çok yararlı bilgi bulabilirsiniz.

9 Kapsam

Derslerde, diğer öğretim üyelerinin açıklamalarını okuyabileceğiniz farklı web sitelerine birçok referans vardır. Amacım, sadece beni dinlemeniz değil, materyali anlamanızdır.

10 Geliştirici olmak için sadece beyninize ve bilgisayarınıza ihtiyacınız olacak

Ne kadar süre pratik yaptığınıza bağlı olarak 3 ila 6 ay sürecektir.

11 Destek

Eski Seviye 02 - 3Binlerce görevle karşılaştığınızda şüphesiz sorular ortaya çıkacaktır. Görevler hakkında soru sorabileceğiniz özel bir hizmet kurduk. Diğer CodeGym öğrencileri, moderatörleri, gönüllüleri ve hizmetin kurucu üyeleri size cevap verecektir.

12 Topluluk

Gücün birlikten geldiğine inanıyoruz. Bu nedenle, soru sorabileceğiniz Topluluğu oluşturduk; farklı konuları tartışın, makaleler ve blog paylaşın. Ayrıca, bir topluluk tanıdık olarak iş bulmak için ideal bir yerdir. Bu nedenle akıllı sorular sormaktan ve akıllı cevaplar vermekten çekinmeyin. Ne kadar aktif davranır ve başkalarına yardım ederseniz, diğer dernek üyelerinin sizi projelerine katılmanızı önerme olasılığı o kadar artar.

yeni bir seviyeye ulaştınız

Seviye 2

Eski Seviye 02 - 4

1 Elly, hepsinin temeli

- Merhaba, Amigo. Bugün size tipik bir Java programının nasıl yapılandırıldığını anlatmak istiyorum . Buradaki nokta, her Java programının sınıflardan ve nesnelerden oluşmasıdır . - Derslerin ne olduğunu zaten biliyorum. Ve nesneler nelerdir? - Küçük gemi yapımına benzeterek, önce çizimini yapıp sonra tersaneye vermek gerekiyor. Bu çizime göre bir gemi monte edilecek. Veya beş gemi. Aslında, istediğiniz kadar. Düzinelerce aynı gemi tek bir çizime göre inşa edildi, hepsi bu! - Java programlamadaki her şey tamamen aynıdır. - Programcı bir tasarım mühendisi gibidir. Tasarım mühendisinin çizimler yapması gerekiyorsa, Java programcısının da sınıflar yazması gerekir. Daha sonra çizimlere göre parçalar, sınıflara göre nesneler yapılır. - Önce sınıflar yazarız (çizimler yaparız) ve daha sonra program çalışma zamanında, Java Sanal Makinesi bu sınıfları kullanarak nesneler oluşturur. Aynı şekilde gemiler yapılır. Bir çizim ve bir sürü gemi var. Farklı adlara sahip ve çeşitli yükler taşıyan farklı gemiler var. Ancak birbirlerine çok benziyorlar: hepsi aynı yapıya sahip ve aynı görevleri yerine getirebiliyor. - Gemilerin durumunda, her şey açık. Bana tam olarak ne hakkında olduğunu anlamak için birkaç karşılaştırma daha verir misin? - Elbette. Arılar mesela... Eski Seviye 02 - 5- Olamaz, bir dakika, arılar bana kötü bir şeyi hatırlatıyor. Bir karınca yuvasını daha iyi düşün. - Bir karınca yuvası, nesne etkileşiminin iyi bir örneğidir. En basit karınca yuvasında üç karınca sınıfı vardır: bir kraliçe, askerler ve işçi karıncalar. Her sınıf için karınca sayısında bir fark vardır. Kraliçe yuvada yalnızdır; çok sayıda asker ve yüzlerce çalışan karınca var. Yani üç sınıf ve yüzlerce nesne olduğunu söyleyebiliriz. Karıncalar birbirleriyle, aynı karıncalarla ve diğer sınıfların karıncalarıyla katı kurallara göre iletişim kurarlar. - Bu mükemmel bir örnek. Tipik bir program için hepsi aynıdır. Bir ana nesne, diğer tüm sınıfların nesnelerini oluşturur. Nesneler birbirleriyle ve bir programın "dış dünyası" ile etkileşime girmeye başlar. Nesnelerin davranışları içlerinde kodlanmıştır. - Pek anlamadım. Daha doğrusu hiç anlamayın. - Bu iki açıklama aynı madalyonun farklı yüzleridir. Gerçek, ikisinin arasında bir yerdedir. İlk örnek (çizim ve gemi içeren örnek), sınıf ile bu sınıfın nesneleri arasındaki ilişkiyi göstermektedir. Benzerlik çok yakın. İkinci örnek (karınca yuvası olan), çalışma zamanında var olan yazılı sınıflar ve nesneler arasındaki ilişkiyi gösterir. - Önce bir programda var olan tüm nesneler için sınıflar yazmamız ve dahası etkileşimlerini tanımlamamız gerektiğini mi kastediyorsunuz? - Evet, ama göründüğünden daha kolay. Java'da, program çalışma zamanındaki her şey nesnedir ve programı yazarken, nesne etkileşiminin farklı yollarını tanımlamanız gerekir. Nesneler sadece birbirlerinin metotlarını çağırır ve onlara gerekli verileri iletir. - Açık değil ama neredeyse net. - Ancak hangi yöntemleri çağıracağınızı ve yöntemlere hangi verileri iletmeniz gerektiğini nasıl bilebilirsiniz? - Her sınıfın, sınıfın ne için yaratıldığını belirten bir açıklaması vardır. Benzer şekilde, her yöntemin ne yaptığına ve ona hangi verilerin gönderilmesi gerektiğine ilişkin bir açıklaması vardır. Sınıfı kullanmak için genel olarak ne yaptığını bilmeniz gerekir. Ayrıca, bu sınıfın her yönteminin tam olarak ne yaptığını bilmeniz gerekir. Ama nasıl yapıldığını bilmek zorunda değilsin . Bu bir tür sihirdir. - Hımm. Öyle görünüyor.   - İşte, bir dosyayı kopyalayan bir sınıf koduna bakın: Eski Seviye 02 - 6- O kadar kolay değil, ama ben zaten resmi anladım. - İyi. Sonra görüşürüz timsah!

2 Risha, Değişkenler ve ilkel tipler

- Hey sen bedava emek. - "Merhaba, Amigo" demek istiyorum. Sizi değişkenlerin iç yapısı hakkında bilgilendirmek istiyorum. Her değişkenin kendisiyle ilişkilendirilmiş, değişkenin değerini sakladığı bir bellek parçası olduğunu zaten biliyorsunuz . - Evet. Geçen sefer söylemiştin. - İyi. Bunu hatırlaman iyi bir şey. Sonra devam edeceğim. - sınıflar . Bir programda yeni bir sınıf tanımladığımızda, bu, yeni bir karmaşık bileşik tür bildirdiğimiz anlamına gelir ; bu veriler ya diğer karmaşık türler ya da ilkel türler olacaktır. Eski Seviye 02 - 7- Hala bir mucize için açık. - Büyük (karmaşık) tipler çok sayıda küçük (ilkel) tipten oluştuğundan, nesneleri çok fazla bellek kullanır. Olağan ilkel tip değişkenlerin yaptığından daha fazlası. Bazen çok daha fazlası. Karmaşık tipteki değişkenlerin atanması çok zaman aldı ve büyük miktarda belleğin kopyalanmasını gerektirdi. Bu nedenle, karmaşık tür değişkenleri nesnenin kendisini değil, yalnızca bir nesne referansını (bu dört baytlık bir adrestir) saklar. Bu, nesne verilerine erişmek için yeterlidir. JVM bununla ilgili tüm zorlukları üstlenir. - Anlamıyorum. - Değişkenin bir kutu gibi olduğundan daha önce bahsetmiştik. 13'ü içinde saklamak için sayıyı bir kağıda yazıp bir kutuya koyabilirsiniz. - Şimdi bir kutuda (değişken) biraz daha büyük bir şey saklamanız gerektiğini hayal edin. Örneğin, bir köpek, bir araba veya komşunuz Joe. Basitleştirmek için kolay bir şey yapabilirsiniz: köpeğin yerine köpeğin resmini, arabanın yerine arabanın plakasını ve Joe'nun kendisi yerine bir kağıda Joe'nun telefon numarasını yazın. - Şimdi bir parça kağıt alıp üzerine Joe'nun telefon numarasını yazıyoruz. Bir nesne referansı gibi. Kutudan Joe'nun numarasının yazılı olduğu bir kağıt çıkarır, kopyalar çıkarır ve birkaç kutuya koyarsak, Joe'ya yapılan göndermeler artacaktır, ancak yalnızca bir Joe olabilir. - Bu tür veri depolamanın avantajı,birçok referans ve sadece bir nesne olabilir . - Bu heyecan verici. Bu arada, neredeyse anladım. Yalnızca bir soruyu daha yanıtlayın: Karmaşık türde bir değişkeni başka bir karmaşık türde değişkene atarsam ne olur? - O zaman bu iki değişken aynı adresi içerecektir. Ve bu nedenle, bir karmaşık tip değişkende saklanan verileri değiştirirseniz, diğerinin verileri de değişecektir . Çünkü biliyorsunuz , değişkenlerin referansları sakladığı tek bir nesne var . Bununla birlikte, nesneye referansları saklayan çok sayıda değişken olabilir. - Ve hiçbir nesne referansı yokken karmaşık tip değişkenlerde (referans/sınıf tipi) ne depolanır? Gerçekten böyle bir şey olabilir mi? - Evet, dostum. Sözleri ağzımdan aldın. Bu olabilir. Referans (karmaşık) tip değişkeninde nesne referansı yoksa, özel bir "boş referans" olan null değerini saklar. Aslında, bir nesnenin adresini 0'a eşit olarak saklar. Ancak Java Sanal Makinesi hiçbir zaman sıfır adresli nesneler oluşturmaz, bu nedenle referans değişkeni 0 ise, o zaman orada hiçbir nesne olmadığını her zaman bilir. Eski Seviye 02 - 8Doğru mu anladım? Değişkenler iki türe ayrılır - ilkel ve referans. Bir ilkel tip değişkeni bir değeri saklarken, bir referans tipi değişkeni bir nesne referansını saklar. İlkel türler int, char, boolean ve daha fazlasıdır. Geri kalanlar referans değişkenlerdir, sınıflar kullanılarak oluşturulurlar. - Bu doğru oğlum.

3 Elly, Hangi nesneler

Eski Seviye 02 - 9- İşte yine en sevdiğiniz öğretmen. Hızlı ilerlediğimiz için size nesnelerin ne olduğunu ve onlarla nasıl başa çıkılacağını anlatacağım. - Herhangi bir nesne oluşturmak için nesne tipi adını (sınıf) ve ondan önce new anahtar kelimesini yazmanız gerekir . Diyelim ki bir Cat sınıfımız var, o zaman: Eski Seviye 02 - 10- Sadece bir nesne yaratırsanız ve onu [referansını] herhangi bir değişkene atamazsanız ne olur? - Bunu yaparsanız, Java Virtual Machine nesneyi oluşturacak ve hemen çöp (kullanılmayan nesne) ilan edecektir. Bir süre sonra çöp toplama sırasında o nesneyi silecektir. - Artık ihtiyacım yoksa nesneyi nasıl yok edebilirim? - Yapamazsın.Bir nesne referansını saklayacak bir değişken olmadığında, nesne çöp olarak işaretlenir ve JVM onu bir sonraki çöp toplama sırasında yok eder. En az bir nesne referansı olduğu sürece, canlı kabul edilecek ve yok edilmeyecektir. Nesneyi hızlı bir şekilde yok etmek istediğinizde, tüm referanslarını null olarak ayarlayın, yani o nesneye başvuran tüm değişkenlere bir null değer atayın. - Anladım. Önceki derslerden sonra hiç de zor görünmüyor. - Tamam, o zaman burada becerilerini geliştirmen için birkaç görev var. Bunlar da System.out'ta. Ama sonra daha zor olanlar olacak. Ve bize hangi çelikten yapıldığını gösterebilirsin.
Görevler
1 Şunu gösteren bir program yazın: «Adım adım ve iş bitti.».
2 7 kez şunu gösteren bir program yazın: «İmkansızı yapmak biraz eğlenceli.».
3 Şunu gösteren bir program yazın: «Her zaman yararlı bir şeyler öğrenme arzusu.».

4 Risha, Değişkenlerin görünürlüğü.

- Merhaba, en sevdiğim öğrencim. Şimdi size değişkenlerin görünürlüğünden bahsedeceğim . - Neden, görünmeyen değişkenler de var mı? - Hayır, değişkenler, kodun o değişkene erişilebilen yerlerinde görünür. Bazı değişkenlere bir programın herhangi bir yerinden, diğerlerine yalnızca kendi sınıfları içinden ve bazı değişkenlere yalnızca bir yöntem içinde erişilebilir. - Örneğin, değişkene bildirilmeden önce başvuramazsınız. - Apaçık. - İşte bazı örnekler: Eski Seviye 02 - 111 Bir yöntemde bildirilen bir değişken, bildirimin başlangıcından yöntemin sonuna kadar görünür / mevcuttur. 2 Bir kod bloğunda bildirilen bir değişken, bu kod bloğunun sonunda bulunur. 3 Değişkenler - yöntem bağımsız değişkenleri - yöntemin kapsamı içinde herhangi bir yerde bulunur. 4 Sınıf / nesne değişkeni, nesnesinin tüm ömrü boyunca mevcuttur. Genel ve özel özel erişim değiştiricileri ek olarak görünürlüklerini denetler. Program çalışma zamanında 5 statik sınıf değişkeni mevcuttur. Erişim değiştiricileri ayrıca görünürlüklerini de belirler. - Resimleri seviyorum, her şey yerli yerine oturuyor. - Aferin, Amigo. Akıllı bir adam olduğunu her zaman biliyordum. - Size ayrıca erişim değiştiricilerden de bahsedeceğim . Bu kadar korkmayın, roket bilimi değil. Bunlar , gördüğünüz genel ve özel sözcüklerdir . - Korkmuyorum, sadece burası soğuk. - Evet tabi. Sınıfınızdaki metotların ve değişkenlerin erişimini (görünürlüğünü) diğer sınıflardan kontrol edebilirsiniz. Her yöntem veya değişken için yalnızca bir erişim değiştirici belirtebilirsiniz. 1 Public değiştirici public Bir değiştirici ile işaretlenmiş bir değişkene, yönteme veya sınıfa programın herhangi bir yerinden erişilebilir. Kısıtlama olmaksızın en yüksek açıklık derecesidir. 2 Özel Değiştirici Özel değiştirici ile işaretlenmiş bir değişkene veya yönteme yalnızca bildirildiği sınıftan erişilebilir. Diğer tüm sınıflar için, işaretli bir yöntem veya değişken, sanki yokmuş gibi görünmez. Bu, en yüksek kapalılık derecesidir (yalnızca aynı sınıftan görülebilir). 3 Değiştirici varsayılanı Herhangi bir değiştirici bir değişkeni veya yöntemi işaretlemiyorsa, değiştirici varsayılanı olarak kabul edilir. Bu değiştiriciye sahip (yani hiç içermeyen) değişkenler veya yöntemler, içinde tanımlandıkları paketin tüm sınıfları tarafından görülebilir. Yalnızca aynı pakette. Bu değiştiriciye bazen , sınıflarının Açıklama sekmesine ait olduğu paketin tamamı için değişkenlere ve yöntemlere erişimin mümkün olduğunu ima etmek için paket adı verilir :Eski Seviye 02 - 12

5 Diego, Bir grup değişken oluşturmak için görevler

- Hey dostum. Gerekirse, sözleşmenin bir kopyasını sizin için saklarım. O sinsi cimri Risha mutlulukla habersizdir. Sözleşmemdeki tutarları görmeliydiniz. Heh heh. - Aferin Diego. Bence bana gerçekten faydalı şeyler öğretiyorsun. - Tabii, Amigo. Acısız kazanç olmaz. Ama yine de birileri hiçbir kazanç sağlamadan acı çekiyor. - Çalışmak için el ele verelim. Şimdi size bir grup değişkeni farklı şekillerde nasıl yaratacağınızı göstereceğim: Eski Seviye 02 - 13- Vay canına, Diego! Çok zekisin. - Heh heh! Teşekkürler Amigo. - Sanırım görevlerimi çoktan kaçırdın. İşte onlardan bazıları. O insanlar, uzaylılar bizim robo-hayatımız hakkında hiçbir şey bilmiyorlar. Bunu sana benden başka kim öğretecek?
Görevler
1 3 kez şunu gösteren bir program yazın: "Pek çok insan sadece onları vurmak yasa dışı olduğu için yaşıyor."
2 Şunu görüntüleyen bir program yazın: «Fikrinizi almak istersem, sizden gerekli formları doldurmanızı isteyeceğim.».
3 20 kez şunu görüntüleyen bir program yazın: "Söylediğim şeylerin çoğunu asla söylemedim."

6 Elly, Referans olarak geçiyor. Referans değişkenleri

- Hey, Amigo, yine ben Elly. Üzgünüm, bunu hep söylüyorum ama 31. yüzyılda Dünya'da işler böyle yürüyor. Size referans değişkenlerin özelliklerini ve referans argümanlarının fonksiyonlara (yöntemlere) nasıl iletileceğini açıklayacağım. - Ben hazırım. - Öyleyse referans değişkenler, ilkel olanlar hariç tüm türlerdeki değişkenlerdir. Bu değişkenler sadece nesnenin adresini içerir (nesne referansı). - İlkel türlerin değişkenleri bir değer ve tür depolar ve sınıf değişkenleri aynı sınıftaki nesnelere, iyi veya boş referansları depolar. Haklı mıyım? - Kesinlikle. - Peki referans nedir? - Nesne ve referansı, diyelim ki, bir adam ve onun telefon numarası gibi bağlantılıdır. Telefon numarası bir erkek değildir, ancak bir erkeği aramak, ondan bir şey istemek, ona yol göstermek veya emir vermek için kullanılabilir. Bir referans, bir nesneyle etkileşime geçmek için de kullanılır. Tüm nesneler birbirleriyle referanslar aracılığıyla etkileşime girer. - Sanki insanlar birbirleriyle telefonda haberleşiyor? - Bu doğru. İlkel bir nesne atadığınızda, değeri kopyalanır (çoğaltılır). Bir referans değişkeni atadığınızda, nesnenin kendisi değil, yalnızca nesne adresi (telefon numarası) kopyalanır. - ОK, anladım. - Bir referans başka bir avantaj sunar: bir nesne referansını herhangi bir yönteme iletebilirsiniz ve bu yöntem, yöntemlerini çağırarak ve nesne içindeki verilere erişerek, referansını kullanarak nesnemizi değiştirebilir (değiştirebilir). - a & bEski Seviye 02 - 14 değişkenlerinin değerleri, takas yöntemi içinde değiştirilir . Takas yöntemini çağırdığınızda , a & b değişkenleri m & n değerlerinin kopyalarını alır . Bu nedenle, a & b değerlerini değiştirdiğinizde m & n değişkenlerinin değerleri aynı kalır . Sağ sütunun kodunda açıkça görülebilir. - Dürüst olmak gerekirse, bundan hiçbir şey anlamadım. Bir iki örnek daha alabilir miyim? - Referans tipi durumunda, bunu yapabilirsiniz: Eski Seviye 02 - 15- a ve b değişkenlerine sırasıyla emma ve alice referansları atanır, a ve b değerleri emma ve alice nesneleri içinde değişir. - Yani başka sınıfların içinde de sınıf ilan etmek mümkün mü? Vay! - Gerisi belli değil. - Hepsi aynı anda değil.

7 Elly, İşlev çağrısı, dönüş değeri

- Pekala, o zaman geri dönelim. Yöntem çağrısının nasıl çalıştığı hakkında konuşacağız ve ardından bir önceki derse tekrar göz atmayı deneyeceksin, tamam mı? - Anlaşmak! - O zaman size işlev/yöntem çağrısından ve döndürülen değerlerden bahsedeceğim. - Komutlar, işlevler halinde gruplandırılmıştır, böylece bunları tek bir blokta, tek bir karmaşık komut olarak çalıştırabilirsiniz. Bunu yapmak için, işlevin adını (yöntem) yazmanız ve ardından adın ardından parantez içinde değerleri ve parametreleri belirtmeniz gerekir. Eski Seviye 02 - 16- Yukarıdaki örnekte, geçen dizgiyi 4 kez gösteren bir fonksiyon yazdık. Daha sonra 6. satıra print4 fonksiyonunu çağırdık . - 6. satırın çalıştırılmasına gelince program 9. satıra atlayacak ve s değişkenine “I like to move it, move it” değeri atanacak. - Ardından 11-14. satırlar yürütülecek ve son olarak işlev tamamlanacak ve program 7. satırla devam edecek. - Anlaşıldı. - İşleve yalnızca argümanları (parametreleri) iletemezsiniz, aynı zamanda işlevin çalışmasının sonucunu (değerini) de döndürebilirsiniz. Bu, dönüş anahtar sözcüğü kullanılarak yapılır. İşte göründüğü gibi: Eski Seviye 02 - 17- Sanırım onu ​​yakalıyorum. Solda ve sağda aynı kod var. Solda, sadece ayrı bir işlev olarak sunulur. - Fonksiyon bir değer hesaplar ve bunu dönüş komutunu kullanarak arayanlara iletir. En azından ben öyle düşünüyorum. - Temel olarak, bu doğru. - Boşluk türü nedir? - Bazı işlevler yalnızca bir şey yapar, ancak ana yöntemimiz gibi hesaplayıp herhangi bir değer döndürmez().Bu işlevler için özel bir sonuç türü olan void (boş bir tür) oluşturulmuştur . - Bir işlev hiçbir şey döndürmezse neden hiçbir şey belirtemiyoruz? - Her değişkenin nasıl bildirildiğini bir düşünün: tür ve ad. Bir işlev, tür, ad ve parantezlerle bildirilir. Parantezlerin takip ettiği işlev adı bir işlev çağrısıdır! - Öyleyse, "boş tip" bulmak, işlevleri bir değer döndüren ve bir değer döndürmeyen iki kategoriye ayırmaktan daha mı kolaydı? - Kesinlikle! Hızlı düşünürsün, oğlum. - Boş bir türü nasıl iade edebilirim? - Yapamazsın. Şu şekilde çalışır: JVM bir dönüş gerçekleştirdiğindekomutunda, return kelimesinin sağındaki ifadenin değerini hesaplar, bu değeri özel bir hafıza alanında saklar ve hemen fonksiyondan çıkar . İşlevin çağrıldığı yerde bir işlev çağrısı sonucunda kaydedilen değeri kullanır. Yukarıdaki örnekte görebilirsiniz. - int m = min(a,b)'nin m = m2'ye dönüştüğü yeri mi kastediyorsunuz ? - Evet. Fonksiyon çağrısından sonra her şey fonksiyonun yerine sonucu aynı yere yazılmış gibi çalışmaya devam eder. O cümleyi bir kez daha okuyun ve son örneğin koduna bakın. - Kolay gibi görünse de gerçekte zordur. Sadece biraz aldım, hepsi bu. - Sorun değil.İlk denemede sadece zaten bildiklerinizi anlayabilirsiniz. Sizin için yeni bir alana ne kadar çok girerseniz, o kadar net değildir. Ve sonuç daha da harika olacak. Zaman geçtikçe her şey netleşir. - Öyleyse, devam edelim.

8 Diego

- Merhaba, Amigo. İşte size birkaç görev. Artık System.out'tan daha fazlasını yapabilirsiniz. En iyisini yap! Sana inanıyorum!
Görevler
1 En az iki sayı
En az iki sayı döndüren bir işlev yazın.
2 En fazla iki sayı
En fazla iki sayı döndüren bir fonksiyon yazın.
3 En az üç sayı
En az üç sayı döndüren bir işlev yazın.
4 En az dört sayı
En az dört sayı döndüren bir işlev yazın.
min(a,b,c,d) işlevi min(a, b) işlevini kullanmak (çağırmak) zorundadır
5 Dize çoğaltma
Geçen dizenin üç katını görüntüleyen bir işlev yazın. Her dize yeni bir satırda olmalıdır.
6 Metin gösterimi
Geçirilen dizgiyi (kelime) aynı satırda üç kez görüntüleyen bir fonksiyon yazın.
Kelimeler bir boşlukla ayrılmalı ve bir araya getirilmek zorunda değildir.

9 Diego, Tam sınıf adı

Eski Seviye 02 - 18- Hey, Amigo, sana tam sınıf isimlerinden bahsetmek istiyorum. - Derslerin paketlerde olduğunu zaten biliyorsunuz. Bu nedenle, tam bir sınıf adı, noktalarla ayrılmış tüm paketleri kapsayan bir ad ve bir sınıf adıdır. Örnekler: Eski Seviye 02 - 19 - Sınıfı kendi kodunuzda kullanmak için tam adını belirtmeniz gerekir. Ancak, kısa bir ad kullanabilirsiniz - yalnızca bir sınıf adı. Bunu yapmak için , bir sınıf ilan etmeden önce import kelimesini ekleyerek adını belirterek bu sınıfı “içe aktarmanız” gerekir . Java.lang (String, Integer,...) paketinin sınıfları varsayılan olarak içe aktarılır. Bunları belirtmeniz gerekmez. Örnek: Eski Seviye 02 - 20- Kısa adların kullanımına bir örnek: Eski Seviye 02 - 21- Anladım. - İyi.

10 Profesör, Sınıflar ve nesneler hakkında anlatım

Eski Seviye 02 - 22- Merhaba, Amigo. Umarım Elly ve Risha'nın bugün size söylediği her şeyi anlamışsınızdır. Güvende olmak için, söz verdiğim gibi, burada daha fazla materyalin bağlantıları var: 1 Notlarım 2 Java'da Düşünmek. Size daha önce bahsettiğim o harika kitap. Okursanız çok iyi olur. - Umarım gözden geçirmek için zaman ayırırsın. - Öhö. Tabi ki yapacağım!

11 Temmuz

- Selam dostum! Umarım biraz zor ve yorucu bir dinlenmeye hazırsındır?

Yorumlar
  • Popüler
  • Yeni
  • Eskimiş
Yorum bırakmak için giriş yapmalısınız
Bu sayfada henüz yorum yok