A String is represented as objects in Java. Accordingly, an object contains values stored in instance variables within the object. An object also contains bodies of code that operate upon the object. These bodies of code are called methods.
Objects that contain the same types of values and the same methods are grouped together into classes. A class may be viewed as a type definition for those objects. Accordingly, how is a String in Java represented? Let's consider the following code snippet in Java.
final public class Main
{
public static void main(String[] args)
{
String s="black lion";
String s1=new String(s);
System.out.println(s.toUpperCase());
System.out.println("black lion".toUpperCase());
System.out.println(s1.toUpperCase());
}
}
The above code displays the String after converting it into uppercase. In this statement String s="black lion";
, Where is the String being assigned. Is it being assigned into an instance variable within the String class or somewhere? and in this statement "black lion".toUpperCase();
. Is it an object of the String class? How?