2011-06-17 35 views
20

tôi chạy checkstyle trên Java mã của tôi và nhận được lỗi này:"Định nghĩa truy cập biến theo thứ tự sai" có nghĩa là gì trong Checkstyle?

variable access definition in wrong order

Ai đó có thể cho tôi biết điều đó có nghĩa?

+0

gửi những dòng có liên quan của mã, theres không thực sự nhiều ai ca don với các thông tin bạn đã đưa ra cho đến nay –

+0

mã java nơi Tôi nhận vi phạm checkstyle này sai sót tĩnh Chuỗi cuối cùng WORKFLOWNAME = "WORKFLOWNAME"; – Manoj

Trả lời

0

Tôi đoán bạn có một cái gì đó như static public int. Thông thường, điều đó sẽ được viết là public static int.

+0

thử 'chuỗi tĩnh cuối cùng WFN =" val ";' –

+0

không có nó vẫn cho tôi lỗi – Manoj

+0

hmm, chuỗi cuối cùng được kiểm tra và tĩnh là [thứ tự mặc định chính xác] (http://java.sun.com/docs/books /jls/second_edition/html/classes.doc.html#78091) phần 8.3.1 ... –

42

Có thể bạn đã đặt hàng khai báo được định cấu hình trong CheckStyle? Hãy nhìn vào http://checkstyle.sourceforge.net/config_coding.html#DeclarationOrder

Trong liên kết đó, bạn sẽ thấy rằng nó nói ... * Theo ước Mã cho ngôn ngữ lập trình Java, các bộ phận của một khai báo lớp hoặc giao diện sẽ xuất hiện theo thứ tự sau:

Biến lớp (tĩnh).
Đầu tiên các biến public class,
thì được bảo vệ,
sau đó mức gói (không sửa đổi lần truy cập), và
thì tin.

Biến thể hiện.
Đầu tiên các biến public class,
thì được bảo vệ,
sau đó mức gói (không truy cập modifier), và
thì Constructors Phương pháp tin *

+0

ah, bắt tốt. Tôi đã nhìn vào một sai lầm :) –

+1

+1 - không biết về quy ước mã này.Đã học được điều gì đó mới mẻ. Tốt! – user294280

+1

Câu trả lời hay, quy tắc Checkstyle không tốt! Tôi đã làm việc trong nhiều mã nguồn Java theo thứ tự ngược lại chính xác (riêng tư, gói, được bảo vệ, công khai). Sigh ... –

0

Kiểm tra xem các bộ phận của một lớp hoặc tuyên bố giao diện xuất hiện trong thứ tự được đề xuất bởi Quy ước mã cho Ngôn ngữ lập trình Java.

  1. Biến lớp (tĩnh). Đầu tiên là các biến lớp công khai, sau đó được bảo vệ, sau đó là cấp gói (không có công cụ sửa đổi truy cập), và sau đó là riêng tư.
  2. Biến thể hiện. Đầu tiên là các biến lớp công khai, sau đó được bảo vệ, sau đó là cấp gói (không có công cụ sửa đổi truy cập), và sau đó là riêng tư.
  3. Constructors
  4. Phương pháp
Các vấn đề liên quan