第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

什么是“找不到符號(hào)”編譯錯(cuò)誤是什么意思?

什么是“找不到符號(hào)”編譯錯(cuò)誤是什么意思?

回首憶惘然 2019-05-20 17:12:27
請(qǐng)解釋以下關(guān)于“無(wú)法找到符號(hào)”的錯(cuò)誤:這個(gè)錯(cuò)誤是什么意思?什么東西會(huì)導(dǎo)致這個(gè)錯(cuò)誤?程序員如何解決此錯(cuò)誤?這個(gè)問(wèn)題旨在成為一個(gè)關(guān)于Java中“無(wú)法找到符號(hào)”編譯錯(cuò)誤的綜合問(wèn)題。
查看完整描述

6 回答

?
不負(fù)相思意

TA貢獻(xiàn)1777條經(jīng)驗(yàn) 獲得超10個(gè)贊

如果您忘記了new以下情況,您也會(huì)收到此錯(cuò)誤:

String s = String();

String s = new String();


查看完整回答
反對(duì) 回復(fù) 2019-05-20
?
哈士奇WWW

TA貢獻(xiàn)1799條經(jīng)驗(yàn) 獲得超6個(gè)贊

“變量超出范圍”的另一個(gè)例子


正如我已經(jīng)看過(guò)幾次這樣的問(wèn)題,也許還有一個(gè)例子,即使它可能感覺(jué)不錯(cuò)也是非法的。


考慮以下代碼:


if(somethingIsTrue()) {

  String message = "Everything is fine";

} else {

  String message = "We have an error";

}

System.out.println(message);

這是無(wú)效的代碼。因?yàn)槊淖兞慷疾辉趍essage其各自的范圍之外可見(jiàn) - {}在這種情況下,這將是周?chē)睦ㄌ?hào)。


你可能會(huì)說(shuō):“但是,一個(gè)名為消息變量定義兩種方式-這樣的消息被后定義if”。


但你錯(cuò)了。


Java沒(méi)有free()或delete運(yùn)算符,所以它必須依賴(lài)跟蹤變量范圍來(lái)找出何時(shí)不再使用變量(以及對(duì)這些原因變量的引用)。


如果你認(rèn)為你做了一件好事,那就特別糟糕了。在“優(yōu)化”代碼之后我看到了這種錯(cuò)誤:


if(somethingIsTrue()) {

  String message = "Everything is fine";

  System.out.println(message);

} else {

  String message = "We have an error";

  System.out.println(message);

}

“哦,有重復(fù)的代碼,讓我們拉出那條普通的線路” - >然后就可以了。


處理這種范圍問(wèn)題的最常見(jiàn)方法是將else-values預(yù)先分配給外部作用域中的變量名稱(chēng),然后在以下情況下重新分配:


String message = "We have an error";

if(somethingIsTrue()) {

  message = "Everything is fine";

System.out.println(message);


查看完整回答
反對(duì) 回復(fù) 2019-05-20
?
慕妹3146593

TA貢獻(xiàn)1820條經(jīng)驗(yàn) 獲得超9個(gè)贊

在Eclipse中獲取此錯(cuò)誤的一種方法:

  1. 定義一個(gè)類(lèi)Asrc/test/java

  2. Bsrc/main/java該使用類(lèi)中定義另一個(gè)類(lèi)A。

結(jié)果:Eclipse將編譯代碼,但maven將給出“找不到符號(hào)”。

基本原因:Eclipse正在使用主樹(shù)和測(cè)試樹(shù)的組合構(gòu)建路徑。不幸的是,它不支持為Eclipse項(xiàng)目的不同部分使用不同的構(gòu)建路徑,這是Maven所需要的。

方案:

  1. 不要那樣定義依賴(lài)關(guān)系; 即不要犯這個(gè)錯(cuò)誤。

  2. 定期使用Maven構(gòu)建代碼庫(kù),以便盡早發(fā)現(xiàn)這個(gè)錯(cuò)誤。一種方法是使用CI服務(wù)器。


查看完整回答
反對(duì) 回復(fù) 2019-05-20
?
蝴蝶刀刀

TA貢獻(xiàn)1801條經(jīng)驗(yàn) 獲得超8個(gè)贊

如果你在其他地方的構(gòu)建中遇到這個(gè)錯(cuò)誤,而你的IDE說(shuō)一切都很好,那么檢查你在兩個(gè)地方都使用相同的Java版本。

例如,Java 7和Java 8具有不同的API,因此在較舊的Java版本中調(diào)用不存在的API會(huì)導(dǎo)致此錯(cuò)誤。


查看完整回答
反對(duì) 回復(fù) 2019-05-20
?
幕布斯6054654

TA貢獻(xiàn)1876條經(jīng)驗(yàn) 獲得超7個(gè)贊

可能存在人們上面提到的各種場(chǎng)景。有幾件事幫我解決了這個(gè)問(wèn)題。

  1. 如果您使用的是IntelliJ

    File -> 'Invalidate Caches/Restart'

要么

  1. 被引用的類(lèi)在另一個(gè)項(xiàng)目中,并且該依賴(lài)項(xiàng)未添加到我的項(xiàng)目的Gradle構(gòu)建文件中。所以我添加了依賴(lài)使用

    compile project(':anotherProject')

它起作用了。HTH!


查看完整回答
反對(duì) 回復(fù) 2019-05-20
  • 6 回答
  • 0 關(guān)注
  • 5116 瀏覽
慕課專(zhuān)欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢(xún)優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)