There are many people who don’t understand the definitions of objects and classes. For example, in Java, is String an object or a class?
Some people say that String can be said to be both a class and an object.
In fact, it’s okay for him to say so. Classes and objects are actually abstract concepts. We can group a class of things together and give it a name, what class, and what it does specifically, but we can also say that it is an object...
So String can be said to be a class, It can also be said to be an object.
But if you want to dig deeper, for example, the editor did a deep dive and found that in java.lang, this is a basic class. You can take a good look at the source code in the lang package.
public final class String extends Object implements Serializable,Comparable < String >,CharSequence
String str =“abc”;
char data [] = {'a','b','c'}; String str = new String(data);
System.out.println( “ABC”); String cde =“cde”; System.out.println(“abc”+ cde); String c =“abc”.substring(2,3); String d = cde.substring(1,2);
So if you encounter any problems in the future, friends can check the documentation and the source code. You can also know it is a class by checking the documentation, and you can quickly understand what it is by looking at the source code.
In the future, you can use a method similar to this to see whether something is an interface, class, etc. Class: It is a subjective abstraction and definition of a physical object. The object is the specific instance generated by this class. String s=new String(); where String is a class and s is generated by the String class. Object. .String() 初始化一个新创建的 String 对象,使其表示一个空字符序列。 String(byte[] bytes) 通过使用平台的默认字符集解码指定的 byte 数组,构造一个新的 String。 String(byte[] bytes, Charset charset) 通过使用指定的 charset 解码指定的 byte 数组,构造一个新的 String。 String(byte[] ascii, int hibyte) 已过时。 该方法无法将字节正确地转换为字符。从 JDK 1.1 开始,完成该转换的首选方法是使用带有 Charset、字符集名称,或使用平台默认字符集的 String 构造方法。 String(byte[] bytes, int offset, int length) 通过使用平台的默认字符集解码指定的 byte 子数组,构造一个新的 String。 String(byte[] bytes, int offset, int length, Charset charset) 通过使用指定的 charset 解码指定的 byte 子数组,构造一个新的 String。 String(byte[] ascii, int hibyte, int offset, int count) 已过时。 该方法无法将字节正确地转换为字符。从 JDK 1.1 开始,完成该转换的首选方法是使用带有 Charset、字符集名称,或使用平台默认字符集的 String 构造方法。 String(byte[] bytes, int offset, int length, String charsetName) 通过使用指定的字符集解码指定的 byte 子数组,构造一个新的 String。 String(byte[] bytes, String charsetName) 通过使用指定的 charset 解码指定的 byte 数组,构造一个新的 String。 String(char[] value) 分配一个新的 String,使其表示字符数组参数中当前包含的字符序列。
To summarize (pz): class, is the The subjective abstraction and definition of a physical object, the object is the specific instance generated by this class. String s=new String();
String here is a class, and s is an object generated by the String class. . In essence, String is a class, but if you want to use it, you can instantiate an object.
String is a very special class! Different from basic types
[Related recommendations]Share an example tutorial of String class in Java
2.Summary of the example tutorials of the String class in Java
3.What are the common methods of the String class in Java? Summarize the common methods of String class in Java
4.Share some source code interpretation of java String
The above is the detailed content of Is String an object or a class in Java? Detailed explanation of String in java. For more information, please follow other related articles on the PHP Chinese website!