簡體   English   中英

從不同的 package JAVA 調用方法

[英]calling methods from different package JAVA

我有兩個包裹; 包 1 和包 2。 在 pack1 中,我有兩個類,一個叫做 Prog,另一個叫做 ClassA。 在 pack2 中,我有一個名為 ClassB 的 class。

我試圖理解為什么我不能使用 object 從 ClassB 調用方法。 我可以使用主要的 class 做到這一點,但不能使用另一個 class。

這是代碼:

package pack1;
import pack2.ClassB;

public class Prog {
    public static void main(String[] args){

    }
}

A 類代碼

package pack1;
import pack2.ClassB;

public class ClassA {
    ClassB o3 = new ClassB();
    // Error won't compile
    System.out.println(o3.getText());

}

B類代碼:

package pack2;

public class ClassB {
    final String TEXT = "This is a text";

    public String getText(){
        return TEXT;
    }
}

這里的問題不在於您無法訪問該方法。 問題是語句必須包含在構造函數、方法聲明或初始化程序塊中。 所以這將是有效的代碼,例如:

enter codepackage pack1;
import pack2.ClassB;

public class ClassA {
    ClassB o3 = new ClassB();

    public void someMethod(){
        System.out.println(o3.getText());
    }
}

//這里打包1個代碼

package 包1;

導入pack2.ClassB;

class A類{

}

公共 class 編{

public static void main(String[] args) {
// write your code here
    ClassB o3 = new ClassB();
    // Error won't compile
    System.out.println(o3.getText());


}

}

//pack2 code here

package 包2;

public class ClassB { final String TEXT = "這是一個文本";

public String getText() {
    return TEXT;
}

}[不需要創建classA可以直接導入pack2及其class,方法]

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM