-3
通過創建父類的實例,我們無法在其他包中訪問其繼承的方法,因爲它不是直接繼承。即使直接我們不能使用非靜態,因爲我們的子方法是靜態的,而父類方法不是。前如何訪問其他包的靜態方法(ex main方法)中受保護的繼承非靜態方法?
package classacees;
public class Thread1 {
protected double sub(double a, double b) {
return (a - b);
}
和...
package example;
import classacees.Thread1;
public class Ece extends Thread1 {
public static void main(String[] args) {
double n=sub(3,2); // error -> cant make a static reference to non static method.
System.out.println(n);
}
你能不能先回答,爲什麼不創建'sub'作爲靜態,爲什麼要在子類中使用靜態方法(在你的情況'main')? – nullpointer
目前還不清楚你的問題是什麼。 – jdv
而不是雙n =子(3,2),嘗試雙n = Thread1.sub(3,2) – Assafs