Một lý do chính đáng để đưa mọi thứ vào hàm tạo như nhận xét của Gili đã nêu là việc sử dụng các trường cuối cùng.
Tuy nhiên, nếu bạn khởi tạo mọi thứ trong hàm khởi tạo, thì tuổi thọ của đối tượng sẽ lâu hơn một chút, mặc dù tôi không nghĩ nhiều vì onCreate
nó sẽ được gọi ngay sau đó.
Mặc dù điều đó đi ngược lại lý tưởng của tôi, nhưng tôi tránh hàm tạo để khởi tạo các thành viên hoạt động và dựa vào onResume()
và onPause()
các tài nguyên mà ứng dụng của tôi đang xử lý.
Vì onCreate()
tôi thường sử dụng nó để thực hiện ánh xạ chế độ xem tới các biến cục bộ. Mặc dù android-annotations đã làm điều đó cho tôi, vì vậy tôi hiếm khi có onCreate()
phương pháp cho Hoạt động của mình. Tôi vẫn sử dụng nó trong Dịch vụ.
Tuy nhiên, nếu bạn nhìn vào các thành viên, bạn có thể đang khởi tạo
họ sẽ có một phương thức "đóng" mà bạn phải gọi vào thời điểm thích hợp (onResume hoặc onPause)
chúng sẽ là một phần của chế độ xem có nghĩa là nó cần được khởi tạo sau đó onCreate cần được gọi
chúng là các hằng số không cần phải đặt trong hàm tạo, chỉ cần một cuối cùng tĩnh sẽ làm được. Điều này bao gồm các hằng số Paint và Path có thể được khởi tạo bằng một khối tĩnh