比如说我有一个叫做Phone的类。
之间有什么区别?
Phone p;
和
Phone p = new Phone(200) //(200 is the price of the phone).
和
new Phone(200)
我已经搜索过,甚至在Eclipse上尝试过,但无法弄清楚。
Phone p;
只声明一个引用处理程序p
,该处理程序不会指向任何地方(它是未初始化的,除非您为其分配了某些内容,否则无法使用[感谢@Anthony])。
Phone p = new Phone(200);
声明一个引用处理程序p
,该处理程序指向一个新创建的Phone
对象(用初始化Phone(200)
)。
new Phone(200)
创建一个新Phone
对象,但是由于没有引用存储在任何地方,因此它立即可以进行垃圾回收(除非其构造函数将引用存储在某个地方)。
(请注意,在Java中,所有类型为reference-type的“变量”实际上都是引用处理程序。只有value-
type的变量直接包含值。由于Phone
是reference-type(它是class
),Phone p
因此始终是“对a的引用”。Phone
“。)
问题内容: 创建新对象和依赖项注入有什么区别?请详细说明。 问题答案: 好吧,创建一个新对象就可以做到的很明确-您可以创建所需类的新实例。 依赖注入是一种在需要时为您提供引用的机制。想象一下一个代表数据库连接池的类- 您通常只有一个该类的实例。现在,您需要将该引用分发给使用它的所有类。依赖注入在这里很方便- 通过使用像Spring这样的DI框架,您可以定义将一个池实例注入到需要它的类中。 您的问题
问题内容: 请说明对象一和对象二的区别: 欧宝级扩展了轿车。 问题答案: 您可以重新分配给的其他某个子类的对象: 但是您不能那样重新分配,因为它仅限于。 如果是在类中定义的方法,而不是在类中定义的方法,则如果这样做,编译器将给您一个错误: 但这没关系: 由于它知道仅限于,因此它知道该方法将存在。 通常,您希望将变量声明为尽可能 广泛的 类型。也就是说,如果您仅要使用中的方法,则请使用type声明它
问题内容: 您能否简单地解释一下Transfer对象和Domain对象之间的区别?如果您可以举一个Java示例,那就太好了。 问题答案: DTO没有任何逻辑。他们只有字段(州)。在将数据从一个层/子系统传输到另一层/子系统时使用它们 域对象可以具有逻辑(取决于您使用的是域驱动设计还是贫乏的数据模型),并且它们通常与数据库结构相关。 如果使用贫乏的数据模型(即您的域对象没有任何逻辑),则DTO和域对
问题内容: 我是Kotlin的新手,最近将一个简单文件从Java转换为Kotlin。我想知道为什么Android转换器将我的java类更改为Kotlin对象。 Java: 转换的Kotlin: 为什么不呢? 任何帮助将不胜感激谢谢。 问题答案: Kotlin对象就像一个无法实例化的类,因此必须按名称进行调用。(本身是静态类) android转换器看到您的类仅包含静态方法,因此将其转换为Kotlin
问题内容: 我从“ Head First Java”学习“多态”,然后想到了这个概念。有人可以举例说明吗? 编译器检查引用类型的类,而不是对象类型。 那么引用类型和对象类型之间有什么区别? 问题答案: 我认为它们对“对象类型”和“引用类型”的使用不是标准化的,但这是我的解释。 考虑以下代码: 该 引用 是类型的。它引用的 对象 是类型。 因此,“引用类型”为,“对象类型”为。 造成这种混乱的原因是
问题内容: Numpy似乎在和类型之间进行了区分。例如我可以做:: 其中dtype(’S’)和dtype(’O’)分别对应于和。 但是熊猫似乎就缺少了区分,并要挟到。:: 强制类型也无济于事。:: 此行为有任何解释吗? 问题答案: Numpy的字符串dtypes不是python字符串。 因此,故意使用本机python字符串,这需要对象dtype。 首先,让我演示一下numpy的字符串与众不同的含义