品易云推流 关闭
文章详情页
文章 > java基础 > java中使用string实例化

java中使用string实例化

头像

小妮浅浅

2021-01-18 10:12:553060浏览 · 0收藏 · 0评论

我们说string可以应用于字符串的一系列操作,这里我们就实例化的方法展开讨论。当我们想要创造一个具体的对象时,这个过程就是实例化的表现。在string中对字符串的实例化方法有两种,我们会在下文中进行深入讲解与分析。在此之前,就实例化的一些说明带来介绍,帮助大家理解string实例化的意思。

一、实例化说明

1Java中,使用已经定义好的类,创建该类对象的过程称为“实例化”。

2实例化就是在堆中分配内存的过程,分配的内存即对象。

3只有实例化后的对象,才能访问到类中的成员变量和方法。

二、实例化方法

1直接赋值

String StringName= "xxx";

特点:JVM会自动根据栈中数据的实际情况来决定是否有必要创建新对象。

举例

String name1 = "Tim";
	String name2 = "Tim";
	System.out.println(name1==name2);

结果

String name2=“tom”;此时name1和name2共享常量池中的同一个数据,即两个变量的地址是一样的,所以输出结果name1和name2相等。

2)构造方法

public String(String str);

实例

public class homework {
 
public static void main(String[] args) {
	String name = "Tom";
	String name1 = new String("Tom");
	String name2 = new String("Tom");
	System.out.println(name);
	System.out.println(name1);
	System.out.println(name2);
}
}

特点:一概在堆中创建新对象,而不管其字符串值是否相等,是否有必要创建新对象。

3)方法区别

String类的设计使用了共享设计模式。在JVM底层实际上会自动维护一个对象池(字符串对象池),如果现在采用了直接赋值的方式进行String类的对象实例化操作,那么该实例化对象(字符串内容)将自动保存到这个对象池之中。如果下次继续使用直接赋值的模式声明String类对象,此时对象池之中如若有指定内容,将直接进行引用;如若没有,则开辟新的字符串对象而后将其保存在对象池之中以供下次使用。所谓的对象池就是一个对象数组(目的就是减少开销)。

以上就是java中使用string实例化的两种方法,直接赋值和构造方法。一般而言,为了方便和程序的简单,这里推荐大家使用第一种方法,构造方法的例子可以作一个了解。

关注

关注公众号,随时随地在线学习

本教程部分素材来源于网络,版权问题联系站长!

底部广告图