Eğer programlama hakkında bilgi edinmek olarak fark edecek bir şey hatalar adil bir dizi yapmak eğiliminde olduğunu ve ya sizin program neden varsayımlar: 1) derleme değil, ya da 2) çalıştırıldığında size beklemeyin çıktı üretmek. Bu sorunlar, böcek olarak adlandırılır ve bunları çıkarma davranışı, ayıklama olarak adlandırılır. Herhangi bir programcının zaman yaklaşık yarısı hata ayıklama harcanmaktadır.
zaman ve kendi hataları oluşturmak için fırsat bol olacak, ancak olasılıklar en birkaç yapalım daha aşina olsun. Programınızda, bir satırın sonunda noktalı virgülle birini silme deneyin ve javactır ile program derleme deneyin. Derleyici size bir hata mesajı verecek. Bu bir derleyici hatası denir ve sizin programı çalıştırmak için önce hepsini ortadan kaldırmak zorundayız. {&Quot; " dışarıda bırakarak, bir işlev adı yazım hatası deneyin; veya ithal satırlardan birini ortadan kaldırarak farklı derleyici hataları alışmak. Eğer derleyici hatası belirli bir tür gördüğünüz ilk kez sinir bozucu olabilir, ama böyle deneyerek - Eğer bilerek oluşturmak bilinen hatalar -. Ortak hatalar birçok tanıdık alabilirsiniz
Program bunu üretmeye planlanan çıktı üretmek değil sonra ince derler ve çalışır, ama ne zaman bir hata, aynı zamanda bir yürütme olarak da bilinen (veya çalışma zamanı) hatası oluşur. Örneğin, bu kod genelinde iki çapraz çizgiler kırmızı bir dikdörtgen oluşturur:
g.setColor (Color.red)
; g.fillRect (0, 0, 200, 200); g.setColor (Color.black); g.drawLine (0, 0, 200, 200); g.drawLine (200, 0, 0, 200);Aşağıdaki kod, diğer taraftan, (iki hat üzerinde kapsar), sadece kırmızı üçgen oluşturur: Ürün g.setColor
(Color .siyah); g.drawLine (0, 0, 200, 200); g.drawLine (200, 0, 0, 200); g.setColor (Color.red); g.fillRect (0, 0, 200, 200);kodu hemen hemen aynıdır fakat çalıştırıldığında tamamen farklı görünüyor. İki çapraz çizgiler görmek için bekliyoruz, daha sonra ikinci durumda kod bir hata içeriyor
İşte başka bir örnek var.
g.drawLine (0, 0, 200, 200); g.drawRect (0, 0, 200, 200); g.drawLine (200, 0, 0, 200);Bu kod, bir kara kutu ve iki diyagonalleri sıraladı üretir. Bu kod sonraki parça üreten tek diyagonal:
g.drawLine (0, 0, 200, 200); g.drawRect (0, 0, 200, 200); g.drawLine (0, 200, 0, 200);Yine, iki diyagonalleri, daha sonra kodun ikinci parçası bir hata (neyin yanlış gittiğini anlamak kadar kodun ikinci parçasına bakıp) iç