Summary
This chapter focused on how to create, manipulate, and manage strings to contribute to the overall performance of your Java applications. You should now understand string pooling and have the confidence to use it effectively based on best practices. Lazy initialization should now be a strategy you consider implementing in your future applications when dealing with the extensive use of strings and you are concerned about thread safety. The chapter also introduced advanced string operation strategies to help give you choices when designing your Java applications for high performance.
In the next chapter, Memory Leaks, we will look at what memory leaks are, how they are created, and what effects they have on our applications. We will look at strategies for avoiding memory leaks to improve the performance of our Java applications.