Sunum yükleniyor. Lütfen bekleyiniz

Sunum yükleniyor. Lütfen bekleyiniz

Bölüm 2 – Java Uygulamalarına Giriş

Benzer bir sunumlar


... konulu sunumlar: "Bölüm 2 – Java Uygulamalarına Giriş"— Sunum transkripti:

1 Bölüm 2 – Java Uygulamalarına Giriş
Outline 2.1 Giriş 2.2 Java’da İlk Programımız: Yazı Yazmak 2.3 İlk Programda Değişiklik Yapma 2.4 Yazıyı Diyalog Kutusunda Gösterme 2.5 Başka bir Java Uygulaması: Sayılar Toplamı 2.6 Bellek 2.7 Aritmetik Operatörler 2.8 Karar Verme: Eşitlik ve İlişkisel Operatörler

2 2.1 Giriş Bu bölümde Örnek programlarla Java’nın yapısını tanıyacaksınız. İki çeşit program - uygulamalar ve appletler

3 2.2 Java’da İlk Programımız: Yazı Yazmak
Uygulama Program java yorumlayıcısı ile çalışır. Örnek program Programı göster, sonra satır satır analiz et

4 Welcome1.java Program Output
// Fig. 2.1: Welcome1.java // Text-printing program. 3 public class Welcome1 { 5 // main method begins execution of Java application public static void main( String args[] ) { System.out.println( "Welcome to Java Programming!" ); 10 } // end method main 12 13 } // end class Welcome1 Welcome1.java Program Output Welcome to Java Programming!

5 2.2 Java’da İlk Programımız: Yazı Yazmak
Açıklamalar için kullanılan işaret: // Açıklamalar program çalıştırılırken iptal edilir. Kodların açıklanması için yararlıdır. Kodların okunabilirliğini artırır. Geleneksel açıklamalar: /* ... */ /* Bu geleneksel bir açıklama türüdür.Birden fazla satırı kapsar. */ Başka bir açıklama tipi Not: satır numaraları programın bir parçası değildir.Referans verilsin amaçlı yazılmışlardır. // Fig. 2.1: Welcome1.java // Text-printing program.

6 2.2 Basit bir Program: Bir satıra Yazı Yazmak
Boş satır Programın okunabilirliğini artırmak için Boş satırlar, boşluklar, ve tablar white-space karakterlerdir. Derleyici tarasından iptal edilirler. Welcome1 sınıfı için sınıf tanımlaması yapar. Her Java programı en az bir tane kullanıcı tanımlı sınıfa sahiptir. Keyword (Anahtar kelimeler): Java’nın programda kullandığı kelimeler class anahtar kelimesi sınıf adını takip eder. Sınıfları isimlendirmek: Her kelimenin baş harfini büyük yaz SampleClassName 3 public class Welcome1 {

7 2.2 Basit bir Program: Bir satıra Yazı Yazmak
Sınıf ismi identifier (tanımlayıcı) olarak çağrılır. Harfler, rakamlar,altçizgi ( _ ) ve dolar işareti ( $ ) kullanılabilir. Rakam ile başlayamaz ve boşluk bırakılamaz. Örnek: Welcome1, $value, _value, button7 7button sınıf ismi olamaz. Java dili büyük küçük harf ayrımı yapar. a1 ve A1 farklıdır. Bölüm 2 ‘den 7 ‘ye kadar, public keyword kullanılr. Şuan için bu konuyu atlıyoruz. İleriki konularda anlatılacaktır. public class Welcome1 {

8 2.2 Basit bir Program: Bir satıra Yazı Yazmak
Programı kaydetme Dosya ismi sınıf ismi ile aynı adda ve dosya türü.java olarak kaydedilmeli. Welcome1.java Sol ayraç { Her sınıfın gövde kodları için başlar. Sağ ayraç ile gövde kodu biter (satır 13) Bütün Java uygulamalarında olur. Uygulamalar main ile programa başlar. Parentezle main bir metod olduğunu gösterir. (ch. 6) Java uygulamaları bir yada daha fazla metod içerebilirler. public class Welcome1 { public static void main( String args[] )

9 2.2 Basit bir Program: Bir satıra Yazı Yazmak
Sadece bir metodun ismi main olabilir. Methods belirtilen görevleri yaparlar ve geriye değer dönderirler. Void, main metodunın hiçbir bilgi geri döndermediği anlamındadır. Şimdilik, main metodu ilk satırda yer alıyor. Sol ayraç metodun gövde kısmını başlatır. Sağ ayraç ile biter } (satır 11) public static void main( String args[] ) {

10 2.2 Basit bir Program: Bir satıra Yazı Yazmak
Bir komutun bilgisayar tarafından gerçekleşmesini sağlar. String karakteri yazmak String – çift tırmak içinde yazılır. Tırnak içindeki boşluklar derleyici tarafından iptal edilemez. System.out Standard output objesi Pencereye komutu yazar.(i.e., MS-DOS prompt) Metod System.out.println Yazıyı yazar. Yazı parantez içinde yazılır. Bu satır statement olarak tanımlanır Statementlar noktalı virgül ile biter. ; System.out.println( "Welcome to Java Programming!" );

11 2.2 Basit bir Program: Bir satıra Yazı Yazmak
Metod gövdesinin sonu Sınıf gövdesinin sonu Komuttan sonra açıklamalar önceki slaytlarda anlatıldığı gibi yazılabilir. } // end method main 13 } // end class Welcome1

12 2.2 Basit bir Program: Bir satıra Yazı Yazmak
Programı Derlemek Komut penceresi açılır ve programın kayıtlı olduğu klasöre gelinir. javac Welcome1.java Hata yok ise, Welcome1.class oluşur. Bytecode lar uygulamayı gösterirler. Bytecode lar Java yorumlayıcısına geçer.

13 2.2 Basit bir Program: Bir satıra Yazı Yazmak
Programı Çalıştırma java Welcome1 yazılır. Yorumlayıcı Welcome1 sınıf için .class dosyalarını yükler .class uzantısı kaldırılır. Yorumlayıcı main metodunu çağırır. Fig. 2.2 Executing Welcome1 in a Microsoft Windows 2000 Command Prompt.

14 2.3 İlk Java Programımızda Değişiklik Yapma
Fig. 2.1 deki programın içeriği aynı kalmak şartı ile kodalrı değiştirelim.

15 2.3 İlk Java Programımızda Değişiklik Yapma
Programda Değişiklik Welcome2.java (Fig. 2.3) aynı çıktıyı üretir Welcome1.java (Fig. 2.1) olduğu gibi. Farklı kod kullanma Satır 9 “Welcome to ” yazısını imlecin bulunduğu yerden itibaren yazmaya başlar. Line 10 “Java Programming! ” yazısını imlecin bulunduğu yerden itibaren yazar ve sonra imleç satır başına geçer. System.out.print( "Welcome to " ); System.out.println( "Java Programming!" );

16 // Fig. 2.3: Welcome2.java // Printing a line of text with multiple statements. 3 public class Welcome2 { 5 // main method begins execution of Java application public static void main( String args[] ) { System.out.print( "Welcome to " ); System.out.println( "Java Programming!" ); 11 } // end method main 13 14 } // end class Welcome2 Welcome2.java 1. Comments 2. Blank line 3. Begin class Welcome Method main 4. Method System.out.print 4.1 Method System.out.println 5. end main, Welcome2 Program Output System.out.print keeps the cursor on the same line, so System.out.println continues on the same line. Welcome to Java Programming!

17 2.3 İlk Java Programımızda Değişiklik Yapma
Yeni satır karakteri (\n) Metod tarafından “özel karakter” olarak tanımlanır. System.out.print ve System.out.println Welcome3.java (Fig. 2.4) Satır \n sonra kırılır. Kullanımı System.out.println veya System.out.print komutlarını yeni bir satır oluşturmak için kullanılabilir. System.out.println( "Welcome\nto\nJava\nProgramming!" ); System.out.println( "Welcome\nto\nJava\nProgramming!" );

18 Notice how a new line is output for each \n escape sequence.
// Fig. 2.4: Welcome3.java // Printing multiple lines of text with a single statement. 3 public class Welcome3 { 5 // main method begins execution of Java application public static void main( String args[] ) { System.out.println( "Welcome\nto\nJava\nProgramming!" ); 10 } // end method main 12 13 } // end class Welcome3 Welcome3.java 1. main 2. System.out.println (uses \n for new line) Program Output Notice how a new line is output for each \n escape sequence. Welcome to Java Programming!

19 2.3 İlk Java Programımızda Değişiklik Yapma
Escape karakterler Backslash ( \ ) Özel karakterleri çıktıda görebilmek için

20 2.4 Dialog Kutusunda Yazıyı Gösterme
Birçok Java uygulaması pencereleri yada diyalog kutularını kullanır. Biz komut penceresini kullandık. JOptionPane sınıfı diyalog kutularını kullanmamızı sağlayacak. Paketler Önceden tanımlanmış sınıflardan oluşur. Aynı amaçlı sınıfların toplandığı yere paketler denir. Bütün paketlerin adına Java sınıf kütüphanesi yada Java applications programming interface (Java API) denir. JOptionPane javax.swing paketinin içinde yer alır. Bu paket Graphical User Interfaces (GUIs) sınıflarının bulunduğu pakettir.

21 2.4 Dialog Kutusunda Yazıyı Gösterme
Program Uygulama dialog kutularını kullanır Açıklamalar daha sonra yapılacak. Başka bir yol ile de program gösterilecek. Paketler, metodlar ve GUI

22 // Fig. 2.6: Welcome4.java // Printing multiple lines in a dialog box. 3 // Java packages import javax.swing.JOptionPane; // program uses JOptionPane 6 public class Welcome4 { 8 // main method begins execution of Java application public static void main( String args[] ) { JOptionPane.showMessageDialog( null, "Welcome\nto\nJava\nProgramming!" ); 14 System.exit( 0 ); // terminate application with window 16 } // end method main 18 19 } // end class Welcome4 1 // Fig. 2.6: Welcome4.java 2 // Printing multiple lines in a dialog box 3 import javax.swing.JOptionPane; // import class JOptionPane Welcome4.java 1. import declaration 2. Class Welcome main 2.2 showMessageDialog 2.3 System.exit Program Output 4 5 public class Welcome4 { 6 public static void main( String args] ) 7 { JOptionPane.showMessageDialog( null, "Welcome\nto\nJava\nProgramming!" ); 10 System.exit( 0 ); // terminate the program 12 }

23 2.4 Dialog Kutusunda Yazıyı Gösterme
Satır 1-2: yorum Java API de iki grup paket vardır. Çekirdek paketler java ile başlar. Java 2 Software Development Kit Kabuk paketler javax ile başlar. Yeni Java paketleri import tanımlaması Derleyici tarafından sınıfı belleğe yüklemek için kullanılır. Derleyici JOptionPane sınıfını javax.swing paketinden alır ve kullanır. // Java packages import javax.swing.JOptionPane; // program uses OptionPane

24 2.4 Dialog Kutusunda Yazıyı Gösterme
Lines 6-11: Boş satır, Sınıf başlangıcı Welcome4 ve main JOptionPane sınıfının showMessageDialog metodunu çağırması İki parametresi vardır. Biden fazla parametre birbirinden virgül (,) ile ayrılır Şimdilik birinci parametre değeri null İkinci parametre ekrana yazılacak yazı showMessageDialog static bir metoddur. static methodlar sınıf isminden sonra nokta (.) konularak metod ismi yazılır. JOptionPane.showMessageDialog( null, "Welcome\nto\nJava\nProgramming!" );

25 2.4 Dialog Kutusunda Yazıyı Gösterme
Bütün cümleler ; ile biter Tek cümle birden fazla satıra ayrılabilir. Değişken yada textlerin ortasında ayırmamal lazım. 12. ve 13. satırlar diyalog kutusunu çalıştırır. OK butonu otomatik olarak çıkar. Başlık kısmında strin ifade Message vardır.

26 2.4 Dialog Kutusunda Yazıyı Gösterme
System sınıfının static metodu olan exit çağrılır. Uygulamayı sonlandırır. GUI gösterecek bütün uygulamalarda yazılır. Static metod olduğundan ,sınıf isminden sonra (.) koymaya ihtiyaç var. Parametre değeri 0 programın başarı ile bittiğini gösterir. 0 dan farklı değer programda hata oluştuğunu gösterir Sınıf System java.lang paketindendir. import tanımına gerek yoktur. java.lang paketi otomatik olarak her Java programına dahil edilir. Satır 17-19: Ayraçla metod ve sınıfın bittiğini gösterir. Welcome4 ve main System.exit( 0 ); // terminate application with window

27 2.5 Başka bir Java Uygulaması: Sayı Toplamı
Program Input diyalog kutularını kullanarak kullanıcıdan iki değer almak Mesaj diyalog kullanarak iki değerin toplamını göstermek

28 Declare variables: name and type.
1 // Fig. 2.9: Addition.java 2 // Addition program that displays the sum of two numbers. 3 4 // Java packages 5 import javax.swing.JOptionPane; // program uses JOptionPane 6 7 public class Addition { 8 // main method begins execution of Java application public static void main( String args[] ) { String firstNumber; // first string entered by user String secondNumber; // second string entered by user 14 int number1; // first number to add int number2; // second number to add int sum; // sum of number1 and number2 18 // read in first number from user as a String firstNumber = JOptionPane.showInputDialog( "Enter first integer" ); 21 // read in second number from user as a String secondNumber = JOptionPane.showInputDialog( "Enter second integer" ); 25 // convert numbers from type String to type int number1 = Integer.parseInt( firstNumber ); number2 = Integer.parseInt( secondNumber ); 29 // add numbers sum = number1 + number2; 32 Addition.java 1. import 2. class Addition 2.1 Declare variables (name and type) 3. showInputDialog 4. parseInt 5. Add numbers, put result in sum Declare variables: name and type. Input first integer as a String, assign to firstNumber. Convert strings to integers. Add, place result in sum.

29 Program output 33 // display result
JOptionPane.showMessageDialog( null, "The sum is " + sum, "Results", JOptionPane.PLAIN_MESSAGE ); 36 System.exit( 0 ); // terminate application with window 38 } // end method main 40 41 } // end class Addition Program output

30 2.5 Başka bir Java Uygulaması: Sayı Toplamı
Programda kullanmak için JOptionPane sınıfı dahil edildi Addition sınıfı public olarak tanımlandı. Dosyanın ismi Addition.java olmalı Satır 10-11: main Tanımlama firstNumber ve secondNumber değişkenleri import javax.swing.JOptionPane; // program uses JOptionPane public class Addition { String firstNumber; // first string entered by user String secondNumber; // second string entered by user

31 2.5 Başka bir Java Uygulaması: Sayı Toplamı
String firstNumber; // first string entered by user String secondNumber; // second string entered by user Değişkenler Bellekte bir değer tutmak için yer ayrılır. Kullanılmadan önce ismi ve tipi ile tanımlanması lazımdır. firstNumber ve secondNumber değişkenlerinin tipleri String (package java.lang) String değerler tutarlar. Tanımlama noktalı virgül ile son bulur ; Aynı tipteki birden fazla değişken aynı satırda tanımlanabilir. Değişkenler birbirinden virgül ile ayrılırlar. Değişkenlerin amaçlarını açıklama satırları ile yanlarına yazabiliriz. String firstNumber, secondNumber;

32 2.5 Başka bir Java Uygulaması: Sayı Toplamı
Değişken tanımlama number1, number2, ve sum (tipleri int) int integer değerleri tutar : i.e., 0, -4, 97 float ve double desimal değerler tutar. char tek karakter tutar: i.e., x, $, \n, 7 int number1; // first number to add int number2; // second number to add int sum; // sum of number1 and number2

33 2.5 Başka bir Java Uygulaması: Sayı Toplamı
Kullanıcıdan gelen String değeri alma Method JOptionPane.showInputDialog aşağıdaki gibi görünür: Kullanıcıya verilecek mesaj Eğer yanlış tipte veri girişi yapılırsa veya Cancel tıklanırsa, hata oluşur. firstNumber = JOptionPane.showInputDialog( "Enter first integer" );

34 2.5 Başka bir Java Uygulaması: Sayı Toplamı
showInputDialog dan dönen sonuç firstNumber değişkenine = operatörü ile atılıyor. = binary operator –eşitlik iki taraflı Değer sağdan sola atanır. firstNumber değerini JOptionPane.showInputDialog( "Enter first integer" ) alır firstNumber = JOptionPane.showInputDialog( "Enter first integer" );

35 2.5 Başka bir Java Uygulaması: Sayı Toplamı
Bir önceki satıra benzer işlem var secondNumber ikinci input değerini alıyor Method Integer.parseInt String değeri integer değere çevirir. (type int) Integer sınıfı java.lang paketinde bulunuyor Integer.parseInt dönen değer number1 değişkenine atanıyor.(satır 27) number1 int tipte tanımlanmıştı Satır 28 benzer secondNumber = JOptionPane.showInputDialog( "Enter second integer" ); number1 = Integer.parseInt( firstNumber ); number2 = Integer.parseInt( secondNumber );

36 2.5 Başka bir Java Uygulaması: Sayı Toplamı
Assignment statement number1 ve number2 toplamını hesaplar (right hand side) sum = number1 + number2;

37 2.5 Başka bir Java Uygulaması: Sayı Toplamı
showMessageDialog kullanılarak sonıç gösterilir. "The sum is " + sum + operatörü "The sum is" ve sum birbirine ekler. Bir String ve başka bir veri tipinin birleşmesi Sonuç yeni bir string Eğer sum içi 117 olsa idi, "The sum is " + sum sonucu "The sum is 117“ olarak gözükecekti. JOptionPane.showMessageDialog( null, "The sum is " + sum, "Results", JOptionPane.PLAIN_MESSAGE );

38 2.5 Başka bir Java Uygulaması: Sayı Toplamı
Farklı veriyonları var : showMessageDialog 4 parametre var (2 parametre yerine) Birinci parametre: null şimdilik İkinci: String ifade Üçüncüsü: Başlıkta gözükecek string Dördüncüsü: Iconun tipi Satır 35 icon yok: JOptionPane.PLAIN_MESSAGE JOptionPane.showMessageDialog( null, "The sum is " + sum, "Results", JOptionPane.PLAIN_MESSAGE );

39 2.5 Başka bir Java Uygulaması: Sayı Toplamı

40 2.6 Bellek Değişkenler Her değişkenin bir ismi, bir tipi, bir genişliği ve değeri olmalı Değişkenin ismi bellekteki yerine karşılık gelir. Değişkene yeni bir değer atandığı zaman bir önceki silinir yerine yeni değer gelir. Bellekten değişkenlerin değerlerini okumak onların değerlerine bir değişiklik yapmaz.

41 2.6Bellek Görsel Gösterimi Sum = 0; number1 = 1; number2 = 2;
Sum = number1 + number2; komut çalıştıktan sonra sum sum 3

42 Aritmetik hesaplamalar çoğu programda kullanılır.
Kullanım * çarpım / bölüm +, - Üstlü ifadeler için operatör yoktur (Bak bölüm 5) Tamsayı bölümü kalanı yok sayar. 7 / 5 = 1 Mod operatörü % kalanı geri dönderir. 7 % 5 = 2

43 2.7 Aritmetik Operatör öncelikleri
Bazı aritmatik operatörlerin diğerlerine göre önceliği vardır. (i.e., * önceliklidir + ‘dan ) İhtiyaç oldukça parantez kullanın. Örnek: a, b ve c değişkenlerinin aritmetik ortalamasını bulun Bu şekilde hesaplamayın: a + b + c / 3 Doğru: ( a + b + c ) / 3 Sıra Parentez, Üslü ifade,Çarpım, Bölüm, Toplama, Çıkarma

44 2.7 Aritmetik

45 2.8 Karar Verme: Eşitlik yada İlişkisel Operatörler
if kontrol deyimi Bu bölümde basit kısmı , sonraki bölümlerde daha detaylı Eğer şart kısmı doğru ise,if deyiminin gövde kodları çalışır. 0 false olarak yorumlanır, 0 dan başka değer ise true olarak yorumlanır if den sonra her zaman şart aranır. Şart kısmı eşitlikte olabilir yada ilişkisel operatörde olabilir. if ( condition ) statement executed if condition true Noktalı virgül koyulmaz şarttan sonra

46 2.8 Karar Verme: Eşitlik yada İlişkisel Operatörler

47 1 // Fig. 2.20: Comparison.java
// Compare integers using if statements, relational operators // and equality operators. 4 // Java packages import javax.swing.JOptionPane; 7 public class Comparison { 9 // main method begins execution of Java application public static void main( String args[] ) { String firstNumber; // first string entered by user String secondNumber; // second string entered by user String result; // a string containing the output 16 int number1; // first number to compare int number2; // second number to compare 19 // read first number from user as a string firstNumber = JOptionPane.showInputDialog( "Enter first integer:" ); 22 // read second number from user as a string secondNumber = JOptionPane.showInputDialog( "Enter second integer:" ); 26 // convert numbers from type String to type int number1 = Integer.parseInt( firstNumber ); number2 = Integer.parseInt( secondNumber ); 30 // initialize result to empty String result = ""; 33 Comparison.java 1. import 2. Class Comparison 2.1 main 2.2 Declarations 2.3 Input data (showInputDialog) 2.4 parseInt 2.5 Initialize result

48 Comparison.java 3. if statements 4. showMessageDialog
if ( number1 == number2 ) result = result + number1 + " == " + number2; 36 if ( number1 != number2 ) result = result + number1 + " != " + number2; 39 if ( number1 < number2 ) result = result + "\n" + number1 + " < " + number2; 42 if ( number1 > number2 ) result = result + "\n" + number1 + " > " + number2; 45 if ( number1 <= number2 ) result = result + "\n" + number1 + " <= " + number2; 48 if ( number1 >= number2 ) result = result + "\n" + number1 + " >= " + number2; 51 // Display results JOptionPane.showMessageDialog( null, result, "Comparison Results", JOptionPane.INFORMATION_MESSAGE ); 55 System.exit( 0 ); // terminate application 57 } // end method main 59 60 } // end class Comparison Test for equality, create new string, assign to result. Comparison.java 3. if statements 4. showMessageDialog Notice use of JOptionPane.INFORMATION_MESSAGE

49 Program Output

50 2.8 Karar Verme: Eşitlik yada İlişkisel Operatörler
Satır 1-12: Açıklama, import JOptionPane, Comparison sınıfına başlangıç ve main Satır 13-18: değişken tanımlama Aynı veri tipli değişkenler tanımlanacak ise virgül ile ayrılarak bir defada tanımlanabilir. Satır 21-30: kullanıcıdan girişleri alınır ve integer değerler string’e çevrilir. String firstNumber, secondNumber, result;

51 2.8 Karar Verme: Eşitlik yada İlişkisel Operatörler
result değişkenine ilk değeri verildi if de yazılan koşul eşitliği kontrol eder (==) Eğer içerikler eşit ise (şart doğru ise) result + operatörü ile birleştirilir. result = result + other strings Önce sağ taraf hesaplanır, yeni içerik result ta tutulur. Eğer içerikler eşit değil ise bu kısım atlanır. result = ""; if ( number1 == number2 ) result = result + number1 + " == " + number2;

52 2.8 Karar Verme: Eşitlik yada İlişkisel Operatörler
Satır 37-50: if koşulları sayıları birbiriyle karşılaştırmaya devam eder. Eğer number1 = 123 ve number2 = 123 değerlerinde olduğunu varsayalım Satır 34 doğru sonucu üretir (if number1 = = number 2) Çünkü number1 ve number2 değerleri eşittir. Satır 40 yanlış sonucu üretir (if number1 < number 2) Çünkü number1 number2 ‘den küçük değildir. Satır 49 doğru sonucu üretir (if number1 >= number2) Çünkü number1 number2’den büyük yada eşit şartını sağlıyor. Satır 53-54: result değişkenin değeri dialog kutusunun showMessageDialog metodunu kullanarak yazdırılır.

53 2.8 Karar Verme: Eşitlik yada İlişkisel Operatörler
Operatörlerin öncelikleri = (atama) dışındaki bütün operatörlerin işeniş biçimi soldan sağa doğrudur. Örneğin: x = y = z => x = (y = z)


"Bölüm 2 – Java Uygulamalarına Giriş" indir ppt

Benzer bir sunumlar


Google Reklamları