Why are strings immutable in Java?

Asked by Last Modified  

3 Answers

Learn Java

Follow 2
Answer

Please enter your answer

I am online Quran teacher 7 years

Strings are immutable in Java primarily for performance and security reasons. Immutability ensures that once a string object is created, its value cannot be changed. This simplifies memory management and optimization by allowing strings to be shared and reused, rather than creating new objects every...
read more
Strings are immutable in Java primarily for performance and security reasons. Immutability ensures that once a string object is created, its value cannot be changed. This simplifies memory management and optimization by allowing strings to be shared and reused, rather than creating new objects every time a modification is made. Additionally, immutability enhances security by preventing unintended changes to sensitive data, as strings are often used to store passwords, API keys, and other confidential information. read less
Comments

C language Faculty (online Classes )

The String is immutable in Java because of the security, synchronization and concurrency, caching, and class loading. The reason of making string final is to destroy the immutability and to not allow others to extend it. The String objects are cached in the String pool, and it makes the String immuta...
read more
The String is immutable in Javabecause of the security, synchronization and concurrency, caching, and class loading. The reason of making string final is to destroy the immutability and to not allow others to extend it. The String objects are cached in the String pool, and it makes the String immutable. read less
Comments

Strings are immutable in java. First let's understand what immutable means... Immutable means which can not be changes. In Java When strings are created they are allocated some memory space and they have address in memory so If we try to modify in string then new string is created and it referes to new...
read more
Strings are immutable in java. First let's understand what immutable means... Immutable means which can not be changes. In Java When strings are created they are allocated some memory space and they have address in memory so If we try to modify in string then new string is created and it referes to new memory allocation and old memory is elligible for garbage collection if there is no reference to that memory location thats why strings are immutable, once created they can not be changes rather new string with new memory is allocated. It we are using new while creating string object so everytime it will use new memory allocation. If assign two same string literal to two reference they point to same memory location. Benifit of this performance improvement. read less
Comments

View 1 more Answers

Related Questions

I want to know what are the differences between runnable and thread class implementation except they are class and interface and how to decide which is better at what time ...
Thread vs. Runnable in Java 1) Java doesn't support multiple inheritance, which means you can only extend one class in Java so once you extended Thread class you lost your chance and can not extend...
Ankit Garg
What is a constructor in Java?
In Java, a constructor is a special method that is called when an object is created using the new keyword. It has the same name as the class and is used to initialize the object's state. Constructors play...
Rishu
0 0
5
What is a complete list of topics of Core Java and topics of Advanced Java?
Certainly! Here's a brief list of topics for both Core Java and Advanced Java: Core Java: Basics of Java Data Types and Variables Control Flow (if, else, switch) Loops (for, while, do-while) Arrays Methods Object-Oriented...
Archit
0 0
5
As a fresher I have done Python training, but hardly getting response from any company. What should I do?
only having training in Python is not enough to be called for intervew. Better you should get real time certification course form reputed organisation with smart hand-on real project exposure. Try to have...
Yamini
0 0
6
What are the differences between Class Methods and Instance Methods in Java?
Class methods are methods which are declared as static. The method can be called without creating an instance of the class. Class methods can only operate on class members and not on instance members as...
Neval
0 0
5

Now ask question in any of the 1000+ Categories, and get Answers from Tutors and Trainers on UrbanPro.com

Ask a Question

Related Lessons

Use of Service Locator Pattern
If we want to reuse the java code that should be the best approach w.r.t re-usability, maintanence and saving time to concentrate on our own businbess logic/requirement. In the similar approach many patterns...

Spring - Dependency Injection (DI)
Spring - Dependency Injection (DI) DI is a framework which provides loose coupling in code. Here loose coupling means no hard coding of the object. Instead of hard coding, we will be injecting these object...

Software Testing
Software testing is a process of executing a program or application with the intent of finding the software bugs. It can also be stated as the process of validating and verifying that a software program...

Easy way to remember Java keyword.
ACCESS MODIFIER ACCESS SPECIFIER abstract, assert, const, final, native, static, strictfp, super, synchronized, this, transient, void, volatile public, private, protected, default DATA...

Rohit Deshbhratar

1 0
0

CONDITIONAL STATEMENT - IF ELSE
1. IF condition only if is true conditon is required. if(condition){//statements} 2. IF-ELSE condition 1. to check whether the condition will be true or false.syntax of if-else2. only 1 conditionif(condition){//statements}else{//statements} 3....

Recommended Articles

Java is the most famous programming language till date. 20 years is a big time for any programming language to survive and gain strength. Java has been proved to be one of the most reliable programming languages for networked computers. source:techcentral.com Java was developed to pertain over the Internet. Over...

Read full article >

In the domain of Information Technology, there is always a lot to learn and implement. However, some technologies have a relatively higher demand than the rest of the others. So here are some popular IT courses for the present and upcoming future: Cloud Computing Cloud Computing is a computing technique which is used...

Read full article >

Java is the most commonly used popular programming language for the creation of web applications and platform today. Integrated Cloud Applications and Platform Services Oracle says, “Java developers worldwide has over 9 million and runs approximately 3 billion mobile phones”.  Right from its first implication as java 1.0...

Read full article >

Designed in a flexible and user-friendly demeanor, Java is the most commonly used programming language for the creation of web applications and platform. It allows developers to “write once, run anywhere” (WORA). It is general-purpose, a high-level programming language developed by Sun Microsystem. Initially known as an...

Read full article >

Looking for Java Training Classes?

Learn from the Best Tutors on UrbanPro

Are you a Tutor or Training Institute?

Join UrbanPro Today to find students near you