Sự khác nhau giữa phương pháp tĩnh công khai và phương pháp công khai là gì? Tại sao bạn sẽ sử dụng một phương pháp tĩnh công cộng?Phương pháp tĩnh công khai so với phương pháp công cộng
Trả lời
Các phương thức của lớp Toán là tĩnh. Vì vậy, khi làm
Math.round(average)
Lớp Toán học không thay đổi theo những gì bạn đã làm - nó chỉ trả về giá trị hoặc hoạt động theo giá trị bạn vượt qua.
Phương pháp tĩnh là hữu ích cho các tiện ích. Những điều như
StringUtils.removeWhitespaceFrom(textContent:String):String
hoặc
BrowserUtils.openInNewWindow(url:String):void
Nó rất khác thường mà bạn muốn sử dụng một phương pháp tĩnh cho bất cứ điều gì khác. Không sử dụng các số liệu thống kê như 'getInstance()' để tạo Singletons - thay vào đó hãy xem xét một khuôn khổ cho việc tiêm phụ thuộc.
phương pháp tĩnh là phương pháp mà một không cụ thể cho bất kỳ trường hợp của một lớp (đối tượng) họ là phương pháp mà không được phép chứa tài liệu tham khảo này và bạn có thể truy cập chúng thông qua các lớp học trực tiếp (không phải là trường hợp đối tượng)
Để làm cho khái niệm của bạn rõ ràng, Giả sử nếu bạn muốn biết bao nhiêu lần lớp của bạn đã được khởi tạo, bạn sẽ sử dụng bộ đếm biến tĩnh trong hằng số lớp, mỗi khi đối tượng của bạn được tạo.
Sau đó, bạn phải sử dụng phương pháp tĩnh để truy cập dữ liệu này, bạn có thể khai báo biến công khai hoặc mặc định và truy cập biến đó với tên lớp nhưng vi phạm nguyên tắc OOP. đây là ví dụ ít
public class CAR {
private static var Counter: int = 0;
chức năng riêng CAR() {Counter ++; }
chức năng tĩnh công khai ReturnTotalCarInstances(): int { Bộ đếm trả lại; }
}
biến tĩnh có thats lợi ích của họ tại sao nó được cung cấp trong hầu hết các ngôn ngữ lập trình. Các trường hợp đếm là sử dụng nhỏ biến tĩnh. Chúng được sử dụng trong phạm vi lớn hơn nhiều. Điểm chính là nó được sử dụng để chia sẻ dữ liệu trên toàn cầu trong số tất cả các đối tượng của Class.
Phương pháp tĩnh có thể được sử dụng làm nhà thầu quá tải. ActionScript không có quá tải hàm, vì vậy đôi khi tôi viết một cái gì đó như:
public class Foo {
public static function fromBar(bar:Bar):Foo {
var foo:Foo = new Foo();
... //initializing foo object from bar
return foo;
}
public static function fromBaz(baz:Baz):Foo {
var foo:Foo = new Foo();
... //initializing foo object from baz
return foo;
}
}
- 1. phương pháp nhà máy tĩnh công cộng
- 2. WPF MVVM - Đơn vị Thử nghiệm một lệnh - Riêng tư so với phương pháp công cộng?
- 3. Chức năng so với phương pháp tĩnh
- 4. lập trình kiểm tra xem phương pháp là công khai
- 5. Được đề xuất: "tĩnh công cộng" hoặc "công khai tĩnh"
- 6. Công văn thẻ so với phương pháp tĩnh trên các lớp chuyên ngành một phần
- 7. Truy cập phương thức java tĩnh công cộng từ scala
- 8. C++: công đoàn với phương pháp?
- 9. tấn công chuỗi phương pháp
- 10. Phương pháp tĩnh của một lớp tĩnh so với phương pháp tĩnh của một lớp không tĩnh (C#)
- 11. Sử dụng phương pháp tĩnh so với phương pháp đối tượng
- 12. So sánh: phương pháp giao diện so với phương pháp ảo so với phương pháp trừu tượng
- 13. Cách chỉ xem các phương pháp công khai trong Resharper?
- 14. Phương pháp lớp Ruby so với phương pháp trong Eigenclasses
- 15. Phương pháp lõi jQuery so với phương pháp tiện ích
- 16. F # Phương pháp tĩnh riêng
- 17. Wrong Phương pháp tĩnh
- 18. phương thức công cộng so với nội bộ trên một lớp nội bộ
- 19. Phương pháp tĩnh so với các phương thức thể hiện trong C#
- 20. Phương pháp công cộng bổ sung trong các lớp học có nguồn gốc?
- 21. GetType trong phương pháp tĩnh
- 22. Quá nhiều phương pháp công cộng bị bắt buộc bởi phát triển thử nghiệm theo hướng
- 23. Trợ giúp với phương pháp tĩnh C++
- 24. Tạo AlertDialog với phương pháp tĩnh?
- 25. Java - Phương pháp tĩnh chung
- 26. Phương pháp tĩnh/không tĩnh Vấn đề
- 27. Polymorphism và tĩnh Phương pháp
- 28. Phương pháp tĩnh trong PHP
- 29. Phương pháp tĩnh trong ASP.NET
- 30. jquery on so với phương pháp nhấp