[英]What do you call this object in Java and why do you use?
所以我現在正在和兩個班級一起工作,剛剛學會了這樣做,但仍然不知道為什么這是可能的,這叫什么。 類變量? 對象創建對象? 而在setter方法中,為什么默認值為null? 它像字符串嗎? 根據我的假設,'RetailItem item' 就像它結合了整個 RetailItem 類並在另一個類中創建了一個具有其功能的新變量。
有兩個名為 CashRegister 和 RetailItem 的類。
這是來自 CashRegister 的帶有 setter 的實例“RetailItem item”。
public class CashRegister
{
private RetailItem item;
public void setItem (RetailItem newItem)
{
if (newItem != null)
{
item = newItem;
}else{
item = new RetailItem();
}
}
}
RetailItem()
是來自RetailItem
類的默認構造函數。 什么item = new RetailItem();
意思? 我什至不知道我要從哪里開始學習。 我錯過了什么?
我在理解你的英語時遇到了一些困難,所以我可能誤解了你的一些問題。
你在 Java 中怎么稱呼這個對象,你為什么使用它?
我不知道你指的是哪個“對象”。
...但還是不知道為什么
this
可能的和this
叫。
它只是被稱為this
。 沒有其他術語可以描述它。
類變量?
不, this
不是類變量。
對象創建對象?
(嗯?)不。 this
不是“對象創建對象”。
而在setter方法中,為什么默認值為null?
因為這是 Java 定義的方式。 任何類型為引用類型的實例變量(如item
)的默認初始值為null
。
(為什么?因為從語言的角度來看,這是唯一有意義的值。其他任何事情,程序員都需要某種方式來說明默認值是什么。編譯器無法讀懂您的想法!)
它像字符串嗎?
不明白你的意思。 但是,如果您要問的是,如果使用String
類型聲明item
是否會獲得相同的默認值行為,那么 Yes。
根據我的假設,
RetailItem item
就像它結合了整個RetailItem
類並在另一個類中創建了一個具有其功能的新變量。
不完全是。 RetailItem item
實際所做的是聲明一個變量,然后您可以在其中放置對RealItem
對象的引用。 這個變量的默認值是null
.... 直到其他一些值被分配給它。
什么
item = new RetailItem();
意思?
這意味着創建(構造)一個新的RetailItem
實例(一個對象),然后將其引用分配給變量item
。
我什至不知道我要從哪里開始學習。
我建議您從一本優秀的 Java 入門教科書、Oracle Java 教程或課程講義開始。 問你的老師。
但要堅持下去。 如果你努力工作,你就會到達一切開始變得有意義的地步。 因為,基本的 Java 是一種簡單且一致的語言。 當您了解泛型、類型推斷 / lambdas 和 .... 多線程時,語言只會變得復雜。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.