2017-12-21 24 views
-5

String 클래스에서 모든 인스턴스 변수가 private임을 알 수 있습니다.String이 final이 아닌 경우 String을 수정할 수있는 방법

String을 처리하는 메소드가 있습니다.

최종 키워드가 String 클래스에 없으면 다른 모든 코드는 그대로이며 클래스 외부에서 액세스 할 수없는 개인 변수이므로 문자열 클래스를 어떻게 수정할 수 있습니까? 나에게 문자열 객체를 수정할 수있는 하위 클래스의 특정 메소드를 알려주십시오.

감사합니다.

+1

이것은 무언가의 복제물입니다. 그러나'String bat = "cat";'''bat = " brown "+ cat'이면 JVM은 실제로 두 번째 경우에 새로운 문자열 객체를 만듭니다. –

+0

왜 그런 방법이 있다고 생각합니까? – shmosel

+2

하위 클래스는 무엇입니까? 'String' 자체는'final'입니다. 즉'String'을 하위 클래스로 만들 수 없습니다. –

답변

0

문서에서 : 문자열은 상수입니다. 해당 값은 작성된 후에는 변경할 수 없습니다. 또한 String은 최종 클래스이므로 확장 할 수 없습니다. 만약 당신이 수정할 수있는 문자 모음을 원한다면 StringBuilder를 사용하십시오 : https://docs.oracle.com/javase/8/docs/api/java/lang/StringBuilder.html