java怎么調(diào)用另一個類的方法 Java怎么在一個類里修改另一個類里的屬性?
Java怎么在一個類里修改另一個類里的屬性?這取決于要修改的類的設(shè)計方式。通常,類屬性是私有封裝的。可以調(diào)用提供的setter方法進(jìn)行修改,也可以使用反射機(jī)制加載要修改的類。所有的前提條件都是類屬性是
Java怎么在一個類里修改另一個類里的屬性?
這取決于要修改的類的設(shè)計方式。通常,類屬性是私有封裝的??梢哉{(diào)用提供的setter方法進(jìn)行修改,也可以使用反射機(jī)制加載要修改的類。所有的前提條件都是類屬性是可訪問的
根據(jù)不同的情況,可能的情況如下:
1。如果該方法不涉及寫入公共資源(如靜態(tài)變量或?qū)懭胛募?,則在修改數(shù)據(jù)庫的值時沒有效果。
2. 例如,類中的方法只計算輸入?yún)?shù)并返回計算值,這沒有任何效果。
3. 但是,如果要修改公共資源,例如修改存儲在數(shù)據(jù)庫中的值,則可能會出現(xiàn)問題,例如:
public void writedb(string key,string value){
collectiondb()
write(key,string value){
,4。由于Java線程的運(yùn)行順序不確定,第一個線程連接到數(shù)據(jù)庫后掛起,第二個線程開始運(yùn)行。如果collectiondb()進(jìn)程使用類中的實例變量connection,則Conn用于保存數(shù)據(jù)庫連接。當(dāng)?shù)诙€線程完成運(yùn)行時,Conn也關(guān)閉。當(dāng)?shù)谝粋€線程繼續(xù)執(zhí)行write函數(shù)來寫入數(shù)據(jù)庫值時,將引發(fā)異常。
這是一個示例,還有其他問題可能會生成臟數(shù)據(jù)。
如果多線程使用公共資源,最好在同步方法上聲明synchronized關(guān)鍵字