簡體   English   中英

Java:如何使用接口將數據從一類傳遞到另一類?

[英]Java : How to pass data from one class to another using interface?

我們知道Java只能extends一個類。 在這種情況下,我想使用interface做下面的工作。

MainClass.java

public class MainClass extends Mango {
    public static void main(String[] args) {
        MainActivity over = new MainActivity();
        over.run();
    }

    public void run(){
        one();
    }

    @Override
    public void two(String s){
        System.out.println("result : "+s);
    }
}

Mango.java

public class Mango {
    public void one(){
        System.out.println("mango one");
        two("mango two");
    }
    public void two(String s){}
}

輸出:

mango one
result : mango two

問題 :

在這種情況下,我得到了結果:Mango 擴展 MainClass來實現芒果二 但是在我的項目中, MainClass已經擴展了另一個類。 這就是為什么我要使用將與MainClass 實現接口用於Mango類的Override方法two()的原因

好像我可以從芒果班接收數據

我怎樣才能做到這一點?

是的,您可以使用Interface實現此目的,在jdk8中,您可以聲明defaultstatic方法,而不必在子類中重寫

public interface MongoSample {

default void one(){
    System.out.println("mango one");
    two("mango two");
}
default void two(String s){}

}

主班

public class MainClass implements MongoSample {

public static void main(String[] args) {
    MainClass over = new MainClass();
    over.run();
}

public void run(){
    one();
}
@Override
public void two(String s){
    System.out.println("result : "+s);
}

}

輸出:

mango one
result : mango two

暫無
暫無

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

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