메소드 호출에 대한 부작용 정보가 필요한 Java 프로그램에 대한 분석을하고 있습니다. 표준 라이브러리 클래스의 경우 읽기 전용 매개 변수가있는 메서드 목록을 컴파일하고 싶습니다. 즉, 인수를 수정하지 않는 메소드 또는 인수에서 도달 할 수있는 모든 메소드입니다. 나는 javadocs에서 많은 것을 추론 할 수 있지만 시간이 걸릴 것이다.Java 표준 라이브러리의 부작용없는 메소드
표준 메서드 호출이 해당 인수를 수정하는지 여부를 결정하는 더 쉬운 참조 또는 방법을 제안 할 사람이 있습니까? 실제로 각 javadoc 항목을 통해 읽는 것이 가장 좋은 방법입니까?
감사합니다.
편집 : 보너스는 개체에 부작용이없는 메서드를 식별하는 것입니다. 예를 들어 stack.pop()은 stack.size()가 그렇지 않은 반면에.
귀하의 솔루션을 보는 데 관심이 있습니다. 변경할 수없는 유형을 사용하는 모든 메소드가 부작용이 없다고 가정 할 수 있습니다. Javadoc과 코드 이외에 어떤 것을 할 수 있는지 잘 모르겠습니다. –
@SB :'String'은 불변이지만,'CharSequence'를 구현하는 클래스는 그렇지 않을 수도 있다는 것을 명심하십시오. – Powerlord