Java 字符串变量是否被视为对象

Java 字符串变量是否被视为对象,java,string,Java,String,String变量是否被视为对象?下一行是否创建了应答对象?变量answer是对象还是基元类型 String answer = readLine("what is your answer? :") String实例是对象,而不是基元类型字符串是一个类。是的,字符串是Java对象。如果查看文档:,您会发现它扩展了java.lang.Object: public final class String extends Object implements Serializable, Comparable

String
变量是否被视为对象?下一行是否创建了应答对象?变量
answer
是对象还是基元类型

String answer = readLine("what is your answer? :")

String
实例是对象,而不是基元类型<代码>字符串是一个类。

是的,字符串是Java对象。如果查看文档:,您会发现它扩展了java.lang.Object:

public final class String
extends Object
implements Serializable, Comparable<String>, CharSequence
公共最终类字符串
扩展对象
实现可序列化、可比较的字符序列

字符串的实例是对象

看看它是javadoc,它被确认了

java.lang.Object
extended by java.lang.String

字符串是一个对象,它根本不是基本类型。

在Java中,按照惯例,对象类型以大写字母开头,基本类型以小写字母开头


也就是说,字符串是一个对象,而不是原语。

在Java中,原语声明都是小写的,例如
double d1=0.55,关键字double都是小写,而对于对象,它们有首字母大写,例如String、double、List等。所以在这种情况下,答案是一个对象。下载Java API文档,它们会派上用场

,因此(
String
是一个对象),
==
在比较
String
时没有达到新程序员期望的效果,结果。。。我知道有很多这样的帖子。我就是这么说的。@nhgrif:P我的错,读错了……嗯,我想这是一个非常有趣的观点。从未考虑过对象以大写字母开头,而基本类型以小写字母开头。。。。您的意思是,对象类型(如类和接口)的名称以大写字母开头,基本类型的名称以小写字母开头。在OP的例子中,“answer”是一个对象的名字,它以小写字母a开头。“String”是一个类。你真的努力表达你的观点大卫·华莱士,但你是如此正确,这是一个愚蠢的错误,我希望我在工作面试中不要犯。这是这里最好的答案,也是唯一正确的答案,因为它(目前)唯一不断言
String
的是对象。当然,在Java中,类可以被看作
类的对象,但这并不重要。所有其他答案都混淆了“类”和“对象”的概念;不理解这种区别的人不应该对这类问题给出答案。我只想补充一个小细节以避免混淆,事实上小写字母的使用和原始字母无关。在Java中,它们有8种基本类型(byte、short、int、long、float、double、char和boolean)。其他一切都是一个对象。@DavidWallace我不认为问题是问
String
本身是否是一个对象-你是对的,
String
是一个类。我想问题是答案是物体还是原语。字符串的实例是对象,而
string
是类。虽然我最初的答案就是这个意思,但我已经更新了它,使之更清晰。@DavidWallace A
String
是一个对象,就像Java中的每一个(非原语)事物都是一个对象一样,因为所有事物最终都从对象继承。是的,@Dgrin91,字符串是一个对象。字符串实例是对象。“String”是一个类。