2012-06-11 27 views
9

Câu hỏi của tôi: Tên của các biến Java không đổi (trong các phương thức) có phải là chữ hoa hay không?Tôi có nên sử dụng đặt tên trường hợp cao hơn để khai báo biến cố định java không?

Tôi luôn theo ấn tượng rằng

a) nếu một biến là không bao giờ thay đổi, nó cần được khai báo cuối cùng (để hiển thị/thực thi nó sẽ không thay đổi) b) nó nên có tên trong chữ hoa

Tuy nhiên, tôi đã nhận thấy trong nhật thực, khi thay đổi một biến (trong vòng một phương pháp) được chính thức/không đổi, và sau đó refactoring/đổi tên nó để cái gì đó như dưới đây:

final int NODE_COUNT = 3; 

Tôi nhận được cảnh báo sau:

Tên này không được khuyến khích. Theo quy ước, tên của các biến cục bộ sẽ bắt đầu bằng một chữ thường.

Điều này khiến tôi tự hỏi liệu quy tắc chữ hoa không áp dụng trong trường hợp này (tức là biến cuối cùng trong phương thức).

+1

xin lỗi để được flippant nhưng không ai khác tìm thấy cụm từ "biến cố định" vui? – PeteH

+2

Sau khi đọc lại, tôi nhận ra rằng đây là một oxymoron, và có lẽ là biến cuối cùng (???), mặc dù trừ khi tôi bị nhầm lẫn, một biến cuối cùng đã được khai báo, nó là _is_ final, và tại thời điểm đó trở thành không biến đổi quá, một lần nữa làm cho "biến cuối cùng" một oxymoron. Có cách nào khác để mô tả điều này không? – Jonny

+1

+1 jonny, xin đừng nghĩ về điều này quá khó! – PeteH

Trả lời

5

Trong các phương pháp bạn không có hằng số, bạn chỉ có các biến cục bộ, có thể là final. Vì vậy, sử dụng camelCase bình thường bắt đầu bằng chữ thường là hoàn toàn suiting ở đó.

2

Hằng số lớp cũng phải là static (làm cho chúng cấp lớp thay vì cấp độ thể hiện), trong trường hợp đó Eclipse sẽ không cảnh báo bạn về việc sử dụng chữ hoa.

Hằng số phương pháp phải có số nhận dạng bắt đầu bằng chữ thường, vì vậy, tôi đồng ý với kết luận của bạn.

+0

Cảm ơn, mặc dù trong một phương thức khi tôi thêm 'tĩnh', tôi nhận được 'công cụ sửa đổi bất hợp pháp cho tham số NODE_COUNT; chỉ lỗi cuối cùng được cho phép ', vì vậy giả sử rằng tôi không thể sử dụng tĩnh trong một phương thức. – Jonny

+0

@jonny bạn không thể thêm công cụ sửa đổi 'tĩnh' vào biến bên trong bất kỳ phương thức nào (không quan trọng nếu nó là tĩnh hay không). Phương pháp là ment để được dinamic - bạn có logic của bạn có, do đó, một phần của nó không thể được định nghĩa là tĩnh .... tuy nhiên của cource bạn có thể sử dụng tĩnh nộp của lớp học của bạn, đó là những hằng số. – dantuch

Các vấn đề liên quan