1. Melupakan koma bertitik

Kesilapan yang paling biasa dilakukan oleh pengaturcara Java yang bercita-cita tinggi melibatkan koma bertitik. Atau sebaliknya, ketiadaannya di tempat yang sepatutnya.

Setiap pernyataan dalam kaedah mesti berakhir dengan koma bertitik. Titik koma ialah apa yang memisahkan pernyataan atau perintah: ini adalah cara kita memberitahu pengkompil Java di mana satu perintah berakhir dan seterusnya bermula.

Contoh ralat:

kod salah Kod yang betul
int a
int b = 5
int c = a + b
int a;
int b = 5;
int c = a + b;
System.out.println("Hello")
System.out.println("Hello");
if (2 > 3)
   System.out.println("Are we in Australia?")
if (2 > 3)
   System.out.println("Are we in Australia?");


2. Terlupa untuk menutup sebut harga

Kesilapan kedua yang paling biasa untuk pendatang baru ke Java ialah menulis rentetan dalam kod dan kemudian terlupa untuk menutup petikan.

Setiap rentetan literal dalam kod mesti disertakan pada kedua-dua belah dengan tanda petikan berganda ("). Pengaturcara pemula selalunya meletakkan tanda petikan pada permulaan teks, tetapi mereka terlupa untuk menutupnya pada penghujungnya.

Berikut adalah beberapa contoh:

kod salah Kod yang betul
String s = "Hello;
String s = "Hello";
System.out.println("Hello);
System.out.println("Hello");
String s = "Hello";
String message = s + " and by. ;
String s = "Hello";
String message = s + " and bye.";


3. Terlupa memasukkan tanda tambah apabila mencantumkan tali

Satu lagi kesilapan biasa apabila bekerja dengan rentetan ialah terlupa menulis tanda tambah apabila melekatkan rentetan. Ralat ini berlaku terutamanya apabila teks dan pembolehubah digabungkan dalam ungkapan panjang dalam kod.

Berikut adalah beberapa contoh:

kod salah Kod yang betul
String s = "Hello";
String message = s  " and bye.";
String s = "Hello";
String message = s + " and bye.";
int age = 35;
System.out.println("Age=" age);
int age = 35;
System.out.println("Age=" + age);
int age = 35;
System.out.println("Age=", age);
int age = 35;
System.out.println("Age=" + age);


4. Terlupa menutup pendakap kerinting

Ini adalah kesilapan yang sangat biasa. Terdapat dua situasi di mana ini adalah tipikal:

Situasi pertama: Anda memutuskan untuk menyalin kod dari suatu tempat dan secara tidak sengaja terlepas beberapa pendakap kerinting. Situasi kedua: Anda tidak menyusahkan diri sendiri untuk memastikan setiap kurungan terbuka dipadankan dengan kurungan penutup.

Untuk mengelakkan ralat ini, biasanya disyorkan untuk pengaturcara pemula untuk menulis pendakap kerinting penutup di bawah yang membuka.

Contoh:

kod salah Kod yang betul
if (2 < 3)
{
   if (3 < 4)
   {
      System.out.println("Mathematics!");
   }
if (2 < 3)
{
   if (3 < 4)
   {
      System.out.println("Mathematics!");
   }
}
{
   if (2 < 3)
   {
      if (3 < 4)
      {
         System.out.println("Mathematics!");
      }
   }
{
   if (2 < 3)
   {
      if (3 < 4)
      {
         System.out.println("Mathematics!");
      }
   }
}


5. Terlupa menambah kurungan

Selalunya kesilapan ini dilakukan oleh pembangun yang mengetahui bahasa pengaturcaraan yang tidak memerlukan tanda kurung dalam situasi yang sama.

Satu kemungkinan ialah mereka lupa untuk meletakkan tanda kurung di penghujung panggilan kaedah:

Kemungkinan lain ialah mereka terlupa untuk membungkus syarat pernyataan if-elsedalam kurungan.

Contoh:

kod salah Kod yang betul
System.out.println("Hello!");
System.out.println;
System.out.println("And bye!");
System.out.println("Hello!");
System.out.println();
System.out.println("And bye!");
if 2 < 3
{
   if 3 < 4
   {
      System.out.println("Mathematics!");
   }
}
if (2 < 3)
{
   if (3 < 4)
   {
      System.out.println("Mathematics!");
   }
}


6. Menulis mainpengisytiharan kaedah yang salah

Sebaik sahaja mereka mengisytiharkan mainkaedah berdarah! Mungkin tiada apa-apa yang mengecewakan pemula seperti kaedah yang lemah ini. Yang penting, maka mereka sentiasa terkejut dan tertanya-tanya kenapa program mereka tidak akan bermula?

Dan, sudah tentu, pengaturcara tidak boleh dipersalahkan, tetapi program, pengkompil, pengesah kod, mesin Java, dll. Senarai kambing hitam tidak berkesudahan.

Contoh:

kod salah Penjelasan
static void main(String[] args)
publicsedang hilang
public void main(String[] args)
staticsedang hilang
public main(String[] args)
voidsedang hilang
void main(String[] args)
publicdan statichilang
public static void main(String args)
[]sedang hilang
public static void main()
String[] argssedang hilang
public static int main(String[] args)
Kami mempunyai intbukannyavoid


7. Nama fail berbeza daripada nama kelas

Menurut standard Java, semua kelas Java mesti disimpan dalam fail dengan nama yang sama dengan nama kelas. Dan seperti yang dinyatakan sebelum ini, kes surat itu penting di sini:

Nama fail Nama kelas Catatan
Solution.java
Solution
Semuanya baik-baik sahaja
Solutions.java
Solution
Nama fail mempunyai huruf yang berlebihans
solution.java
Solution
Nama fail bermula dengan huruf kecil
Solution.txt
Solution
Sambungan fail adalah .txtbukannya.java
Solution.java
solution
Nama kelas bermula dengan huruf kecil

Sebenarnya, beberapa kelas boleh diisytiharkan dalam fail dengan sambungan .java, tetapi hanya satu daripada mereka boleh mempunyai perkataan publicsebelum nama kelas. Dan ini adalah nama yang mesti sepadan dengan nama fail.

Fail .java mesti sentiasa mempunyai kelas yang namanya sama dengan nama fail dan kelas itu perlu mempunyai pengubah publicsuai. Contoh:

Solution.java
public class Solution
{
}

class Apple
{
}

class Pineapple
{
}

Selain itu, bahasa Java membolehkan anda menulis kelas dalam kelas. Ini adalah satu lagi cara untuk mengatasi had di atas. Jika kelas awam (kelas dengan publicpengubah suai) diisytiharkan dalam fail dan mempunyai nama yang sama dengan nama fail, maka anda boleh mengisytiharkan seberapa banyak kelas yang anda suka di dalam kelas awam ini. Yang berkata, ini bukan lagi kelas biasa. Sebaliknya, mereka akan menjadi kelas dalaman atau bersarang. Contoh:

Solution.java
public class Solution
{
   public class Apple
   {
   }

   public static class Pineapple
   {
   }
}


8. Lupa menulispackage

Memandangkan program biasanya mempunyai beribu-ribu kelas, mungkin sukar untuk mencari nama yang mudah, mudah difahami dan unik untuk kesemuanya. Itulah sebabnya di Java adalah kebiasaan untuk mengumpulkan kelas ke dalam pakej menggunakan packagekata kunci. Tepat cara fail dikumpulkan ke dalam folder.

Itulah sebabnya setiap kelas harus bermula dengan petunjuk pakej yang dimilikinya. Contoh

Kod tanpa pakej Contoh yang diperbetulkan
public class Solution
{
}
package com.codegym.tasks.task0001;

public class Solution
{
}


9. Terlupa untuk menambahimport

Jika kami ingin menggunakan kelas orang lain dalam program kami, kami mempunyai dua pilihan: di mana-mana dalam kod kami, kami juga mesti menulis nama pakejnya sebelum nama kelas. Sebagai alternatif, kita boleh menulis nama kelas yang layak sepenuhnya dengan importkata kunci sekali.

Contoh:

Tanpa menggunakan import Menggunakan import
public class Solution
{
   java.util.Scanner scanner = new java.util.Scanner();
}
import java.util.Scanner;

public class Solution
{
   Scanner console = new Scanner();
}

Kedua-dua pilihan berfungsi, tetapi jika anda hanya menulis Scannerdalam kod anda tanpa menambah import, maka pengkompil tidak akan dapat memahami pakej mana yang diperlukan untuk mengambil kelas Scannerdan program anda tidak akan dikompil.