"Hei, rekrutan muda, yang membuat banyak kesalahan setiap hari, bahkan dalam program yang paling sederhana!

"Um... Hai, Diego. Wah, kamu benar-benar tahu cara menghibur orang!"

"Tentu saja, saya tahu! Pelajari bagaimana mengatakan apa yang perlu dikatakan. Seperti yang saya katakan, 'setiap hari'. Dengan lebih sopan, sapaan saya berarti "programmer sukses masa depan, jika, tentu saja, Anda tidak meledakkannya ."

"Oooh, kalau begitu terima kasih, guruku yang paling metalik! .

"Anda akan berterima kasih kepada saya setelah pelajaran ini. Di sini saya akan membuat daftar kesalahan paling populer yang dicatat oleh kompiler. Dan tugas Anda adalah mengingat. Diperingatkan terlebih dahulu.

Lupa titik koma

"Kesalahan paling umum yang dilakukan calon programmer Java melibatkan titik koma. Atau lebih tepatnya, ketidakhadirannya di tempat yang seharusnya."

"Sebenarnya... aku telah melakukan pelanggaran ini berulang kali."

"Setiap pernyataan di dalam metode harus diakhiri dengan titik koma. Titik koma adalah yang memisahkan pernyataan atau perintah: inilah cara kami memberi tahu kompiler Java di mana satu perintah berakhir dan perintah berikutnya dimulai.

Contoh kesalahan:

Kode salah Kode yang benar
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?");

Lupa menutup tanda kutip

"Kesalahan paling umum kedua bagi pendatang baru di Java adalah menulis string dalam kode dan kemudian lupa menutup tanda kutip.

Setiap string literal dalam kode harus diapit di kedua sisi dengan tanda kutip ganda ("). Pemrogram pemula sangat sering memberi tanda kutip di awal teks, tetapi mereka lupa menutupnya di akhir.

Kode salah Kode yang benar
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.";

Lupa menyertakan tanda tambah saat merekatkan senar

"Kesalahan umum lainnya saat bekerja dengan string adalah lupa menulis tanda tambah saat merekatkan string. Kesalahan ini terutama terjadi saat teks dan variabel digabungkan dalam ekspresi panjang dalam kode.

Berikut beberapa contohnya:

Kode salah Kode yang benar
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);

Lupa menutup kurung kurawal

"Ini adalah kesalahan yang sangat umum. Ada dua situasi yang khas:

  1. Anda memutuskan untuk menyalin kode dari suatu tempat dan secara tidak sengaja melewatkan beberapa kurung kurawal.
  2. Anda hanya tidak menyusahkan diri sendiri untuk memastikan bahwa setiap tanda kurung buka dicocokkan dengan tanda kurung tutup."

"Pilihan kedua adalah apa yang saya lakukan. Kadang-kadang saya terlalu terbawa suasana sehingga saya lupa!" .

"Untuk menghindari kesalahan ini, biasanya disarankan bagi pemrogram pemula untuk menulis kurung kurawal penutup di bawah kurung kurawal pembuka.

Contoh:

Kode salah Kode yang benar
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!");
      }
   }
}

Lupa menambahkan tanda kurung

"Paling sering kesalahan ini dibuat oleh pengembang yang mengetahui bahasa pemrograman yang tidak memerlukan tanda kurung dalam situasi serupa.

Salah satu kemungkinannya adalah mereka lupa meletakkan tanda kurung di akhir pemanggilan metode:

Kemungkinan lain adalah bahwa mereka lupa membungkus kondisi pernyataan if-elsedalam tanda kurung.

Contoh:

Kode salah Kode yang benar
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!");
   }
}

Penulisan maindeklarasi metode salah

"Segera setelah mereka menyatakan mainmetode berdarah! Mungkin tidak ada yang membuat pemula tersandung sebanyak metode yang buruk ini. Yang penting, mereka selalu terkejut dan bertanya-tanya mengapa program mereka tidak dapat dimulai? Dan, tentu saja, pemrogramnya tidak Bukan salahnya, tetapi program, kompiler, validator kode, mesin Java, dll. Daftar kambing hitam tidak ada habisnya.

Contoh:

Kode salah Penjelasan
static void main(String[] args)
publichilang
public void main(String[] args)
statichilang
public main(String[] args)
voidhilang
void main(String[] args)
publicdan statichilang
public static void main(String args)
[]hilang
public static void main()
String[] argshilang
public static int main(String args)
Kami memiliki intsebagai gantinyavoid

Nama file berbeda dengan nama class

"Menurut standar Java, semua kelas Java harus disimpan dalam file dengan nama yang sama dengan nama kelas. Dan seperti yang disebutkan sebelumnya, kasus huruf penting di sini:

Nama file Nama kelas Catatan
Solusi.java Larutan Semuanya baik-baik saja
Solusi s .java Larutan Nama file sebagai huruf berlebihan 's'
solusi.java _ Larutan Nama file dimulai dengan huruf kecil
Larutan. txt Larutan Ekstensi file adalah .txt bukan .java
Solusi.java larutan Nama kelas dimulai dengan huruf kecil

“Sebenarnya beberapa kelas dapat dideklarasikan dalam sebuah file dengan ekstensi .java, tetapi hanya satu kelas yang dapat memiliki kata publicsebelum nama kelas. Dan ini adalah nama yang harus sesuai dengan nama file.

"File .java harus selalu memiliki class yang namanya sama dengan nama file, dan class tersebut harus memiliki modifier public. Contoh:

Solusi.java
public class Solution
{
}

class Apple
{
}

class Pineapple
{
}

"Selain itu, bahasa Java memungkinkan Anda menulis kelas di dalam kelas. Ini adalah cara lain untuk mengatasi batasan di atas. Jika kelas publik (kelas dengan pengubah public) dideklarasikan dalam file dan memiliki nama yang sama dengan nama file, maka Anda dapat mendeklarasikan kelas sebanyak yang Anda suka di dalam kelas publik ini. Artinya, ini bukan lagi kelas biasa. Sebaliknya, mereka akan menjadi kelas internal atau bersarang. Contoh:

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

   public static class Pineapple
   {
   }
}

Lupa menulispackage

"Karena program biasanya memiliki ribuan kelas, akan sulit untuk menemukan nama yang sederhana, mudah dipahami, dan unik untuk semuanya. Itu sebabnya di Java biasanya mengelompokkan kelas ke dalam paket menggunakan kata kunci. Persis seperti cara file packagedikelompokkan ke dalam folder."

"Ah-ha, jadi itu sebabnya setiap kelas harus dimulai dengan indikasi paket miliknya."

"Tepat. Ini contohnya:

Kode tanpa paket Contoh yang diperbaiki
public class Solution
{
}
package en.codegym.tasks.task0001;

public class Solution
{
}

Lupa menambahkanimport

"Jika kita ingin menggunakan kelas orang lain dalam program kita, kita memiliki dua opsi: di mana pun dalam kode kita, kita juga harus menulis nama paketnya sebelum nama kelas. Alternatifnya, kita dapat menulis nama kelas yang memenuhi syarat dengan kata kunci importsekali . Contoh:

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

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

"Kedua opsi berfungsi, tetapi jika Anda hanya menulis Scannerkode Anda tanpa menambahkan import, maka kompiler tidak akan dapat memahami paket mana yang diperlukan untuk mengambil kelas Scanner, dan program Anda tidak dapat dikompilasi."

"Terima kasih, Diego. Pelajaran ini akan membuatku lebih memperhatikan."

"Itulah yang kuharapkan. Semoga berhasil!"