本篇文章给大家分享的是有关String中怎么创建一个对象,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。
创新互联主要业务有网站营销策划、成都做网站、成都网站设计、成都外贸网站建设、微信公众号开发、小程序开发、HTML5建站、程序开发等业务。一次合作终身朋友,是我们奉行的宗旨;我们不仅仅把客户当客户,还把客户视为我们的合作伙伴,在开展业务的过程中,公司还积累了丰富的行业经验、营销型网站资源和合作伙伴关系资源,并逐渐建立起规范的客户服务和保障体系。
代码 public class StaticFinalStringTest {
public static void main(String[] args) { String a = "x"; String x = new String("x"); String q = a + "x"; String p = a + new String("x"); }
}
javap解析的数据
Compiled from "StaticFinalStringTest.java" public class com.zang.statictest.StaticFinalStringTest { public com.zang.statictest.StaticFinalStringTest(); Code: 0: aload_0 1: invokespecial #8 // Method java/lang/Object."
public static void main(java.lang.String[]);
Code:
0: ldc #16 常数到操作数栈 // String x
2: astore_1 将引用类型或returnAddress类型值存入局部变量1
3: new #18 创建类实例 // class java/lang/String
6: dup 复制栈顶部一个字长内容
7: ldc #16 // String x
9: invokespecial #20 调用需要特殊处理的实例方法 // Method java/lang/String."":(Ljava/lang/String;)V
12: astore_2 将引用类型或returnAddress类型值存入局部变量2
13: new #23 创建类实例 // class java/lang/StringBuilder
16: dup 复制栈顶部一个字长内容
17: aload_1 从局部变量1中装载引用类型值
18: invokestatic #25 调用命名类中的静态方法 // Method java/lang/String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
21: invokespecial #29 调用需要特殊处理的实例方法 // Method java/lang/StringBuilder."":(Ljava/lang/String;)V
24: ldc #16 常数到操作数栈 // String x
26: invokevirtual #30 调度对象的实例方法 // Method java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
29: invokevirtual #34 调度对象的实例方法 // Method java/lang/StringBuilder.toString:()Ljava/lang/String;
32: astore_3 将引用类型或returnAddress类型值存入局部变量3
33: new #23 创建类实例 // class java/lang/StringBuilder
36: dup 复制栈顶部一个字长内容
37: aload_1 从局部变量1中装载引用类型值
38: invokestatic #25 调用命名类中的静态方法 // Method java/lang/String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
41: invokespecial #29 调用需要特殊处理的实例方法 // Method java/lang/StringBuilder."":(Ljava/lang/String;)V
44: new #18 创建类实例 // class java/lang/String
47: dup 复制栈顶部一个字长内容
48: ldc #16 常数到操作数栈 // String x
50: invokespecial #20 调用需要特殊处理的实例方法 // Method java/lang/String."":(Ljava/lang/String;)V
53: invokevirtual #30 调度对象的实例方法 // Method java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
56: invokevirtual #34 调度对象的实例方法 // Method java/lang/StringBuilder.toString:()Ljava/lang/String;
59: astore 4 将将引用类型或returnAddress类型值存入局部变量
61: return
}
以上就是String中怎么创建一个对象,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注创新互联行业资讯频道。