靜態(tài)方法怎么調(diào)用私有變量
public class cS {
private float screen;
public static float getScreen() {
cS cS3=new cS();
return cS3.screen;
}
public void setScreen(Float newScreen) {
screen=newScreen;?
System.out.println(screen);
}
}
package canshu;
public class cS2 {
public static void main(String[]args) {
cS cs = new cS();
cs.setScreen(200f);
System.out.println(cs.getScreen());
}
}
2019-12-03
在其中實(shí)例化類,進(jìn)行調(diào)用。
但是在本例中在getScreen的實(shí)例化的對(duì)象與類CS2的中的實(shí)例化不同,getScreen無(wú)法去調(diào)用在CS2中的類所用的量值。要么將變量screen改為靜態(tài)的,要么將靜態(tài)方法改為普通的方法。
2020-05-31
private static float screen;
public static float getScreen() {
return screen;
}
public void setScreen(float newScreen) {
screen=newScreen;?
System.out.println(screen);
}
你這本來(lái)就不對(duì)吧? get的寫法也錯(cuò)了。。screen 變成static屬性 就能調(diào)用 否則 靜態(tài)方法是不能直接調(diào)用靜態(tài)屬性的
2020-05-23
?靜態(tài)方法中可以直接調(diào)用同類中的靜態(tài)成員,但不能直接調(diào)用非靜態(tài)成員。原因是靜態(tài)方法屬于類,程序運(yùn)行中先分配內(nèi)存,而非靜態(tài)變量屬于對(duì)象,分配內(nèi)存在后。這個(gè)時(shí)間差,會(huì)讓編譯器報(bào)錯(cuò)。