함수를 사용하거나 정적 메서드를 여러 스레드 프로그램에서 사용하는 것이 더 빠릅니다. 왜 더 빠른 지 설명하십시오.함수 대 정적 메서드
답변
"순수 함수"가 멀티 스레딩에 더 좋다고 들었을 것입니다. pure 함수는 종종 Java에서 정적 메서드로 구현 될 수 있지만 인스턴스 메서드로 구현 될 수도 있습니다. 요점은 멀티 스레딩 할 때 변경할 수있는 전역 변수가없는 경우 항상 더 좋습니다. 그래서 당신이 불변의 객체를 가지고 있다면 그것은 정적 함수가 순수한 함수를 구현하는 것만큼이나 좋습니다.
2 가지 접근법 (나는 심각하게 의심 스럽습니다) 사이에 현명한 차이가 있더라도,이를 바탕으로 프로그램을 설계해서는 안됩니다. 더 나은 성능을 얻기 위해서는 좋은 디자인을 희생해서는 안됩니다. 당신은 많이 얻지는 못하지만, 당신은 많이 잃기 때문에.
+1 : 작은 차이가 있다고해도 JVM이 향상 될 때 차이가 변경된다는 사실을 실망하게 될 것입니다. 즉, 디자인을 디자인에 맞게 변경하면 나중에 실제로 느려지 며 실망 할 수 있습니다. 간단하고 명확한 것을 고수하고 비즈니스가 얼마나 다른지 말할 수 없다면 나노 초마다 걱정할 필요가 없습니다. –
전혀 동의합니다. 결정적 정적 대 인스턴스는이 메소드가 논리적으로 * 특정 객체 인스턴스 또는 특정 클래스의 모든 객체에 속하는지 여부에 따라 결정되어야합니다. 작은 성능상의 불이익이있을 수 있지만 (public final - final 메서드는 가상 호출 임) 일반적으로 무시할 수 있으며 JVM은 점점 더 똑똑해지고 점점 더 효율적으로 처리됩니다. 이러한 차이가 애플리케이션에 중요한 영향을 미치는 경우 Java가 좋지 않은 선택 일 수 있습니다. –
- 1. 정적 메서드 대 정적 인스턴스
- 2. 또 다른 정적 대 비 정적 메서드
- 3. 정적 대 동적 클래스 함수 (메서드) - 더 빠릅니까?
- 4. PHP의 도우미 클래스 - 정적 메서드 대 표준 함수
- 5. (Java) 정적 일반 메서드 대 제너릭 클래스 정적 메서드
- 6. 비 정적 대 정적 함수 및 변수
- 7. 구성원 함수 대 개체 참조가있는 정적 함수
- 8. 정적 도우미 클래스 대 인스턴스 클래스의 정적 메서드 대 확장 메서드
- 9. 파이썬 : 클래스 메서드 대 정적 방법의 차이
- 10. 공유 사용을위한 정적 대 인스턴스 메서드
- 11. 확장 메서드 대 정적 유틸리티 클래스
- 12. "Do-er"클래스 대 정적 유틸리티 메서드
- 13. 팩토리 메서드 : 정적 함수와 C++의 비 정적 함수 구현
- 14. 다른 정적 메서드 내에서 정적 메서드 호출
- 15. 컨트롤 참조 정적 메서드 성능
- 16. 정적 클래스 및 정적 메서드
- 17. 정적 및 비 정적 메서드
- 18. 정적 대 멤버 변수
- 19. Python에서 정적 메서드 pickling
- 20. 부울 대 힌트 대 Python3 함수 어노테이션
- 21. vbscript 정적 클래스 변수/메서드?
- 22. 이 클래스를로드하는 방법 (정적/비 정적 메서드)?
- 23. Java 대 C# 메서드/함수 반환 형식 재정의?
- 24. Objective-C의 "개인 메서드"또는 정적 함수. 어느 것을 사용해야합니까?
- 25. 필드가있는 정적 메서드
- 26. C#의 정적 메서드?
- 27. PHP, 정적 메서드 오버로드
- 28. Java의 정적 생성자 메서드
- 29. 클래스의 WCF 정적 메서드
- 30. Java 정적 메서드
"함수"는 실제로 Java에서 사용되는 용어가 아니므로 질문을 명확히해야합니다. 이상적으로 두 가지 접근법을 보여주는 예를 제시하십시오. –
정적 대 비 정적 방법을 사용해야합니다. –
그는 방법이 아니라 기능을 의미한다고 생각합니다. –