Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Java

ใช้ชื่อ Class สำเร็จรูปเป็น Class/Variable Name ใน Java ได้หรือไม่?

1. ใช้ชื่อ Class สำเร็จรูปเป็น Class Name: ได้

Java อนุญาตให้สร้าง class ชื่อเดียวกับ class ใน java.lang (หรือ package อื่น) ได้

ตัวอย่าง


// ไฟล์: Number.java
public class Number {
    public static void main(String[] args) {
        System.out.println("Custom Number class works!");
        // ใช้ java.lang.Number ต้องใช้ fully qualified name
        java.lang.Number n = Integer.valueOf(42);
        System.out.println("java.lang.Number: " + n);
    }
}

ผลลัพธ์

Custom Number class works!
java.lang.Number: 42

2. ใช้ชื่อ Class สำเร็จรูปเป็น Variable Name: ได้

Variable name ชื่อเดียวกับ class ได้ ไม่ใช่ keyword

ตัวอย่าง


public class Demo {
    public static void main(String[] args) {
        String String = "Hello"; // variable ชื่อ String
        System.out.println(String); // พิมพ์ variable
        
        // ใช้ java.lang.String class ต้องใช้ fully qualified
        java.lang.String className = java.lang.String.class.getName();
        System.out.println("Class: " + className);
    }
}

ผลลัพธ์

Hello
Class: java.lang.String

ข้อควรระวัง

  • Confusing: โค้ดอ่านยาก ดูไม่รู้ว่าเป็น class หรือ variable
  • Fully Qualified Name: ต้องใช้ java.lang.String ทุกครั้งที่จะใช้ class จริง
  • Keywords ห้ามใช้เป็น identifier: class, int, if, for... ไม่ได้
  • var (Java 10) เป็น reserved type name - ห้ามเป็น variable name

Best Practice

อย่าใช้ ชื่อ class สำเร็จรูป (String, Integer, List, Object, Exception...) เป็นชื่อ variable/class ของตัวเอง

  • ใช้ชื่อที่ descriptive: inputString, userList, errorMessage
  • Follow naming conventions: class=PascalCase, variable=camelCase