不同的类实现相同的接口传入构造函数中
创始人
2025-01-08 16:00:26
0

在Java中,可以通过实现相同的接口来传递给构造函数不同的类。以下是一个示例代码:

// 定义接口
interface MyInterface {
    void doSomething();
}

// 实现不同的类
class ClassA implements MyInterface {
    @Override
    public void doSomething() {
        System.out.println("ClassA do something");
    }
}

class ClassB implements MyInterface {
    @Override
    public void doSomething() {
        System.out.println("ClassB do something");
    }
}

// 接收不同的类实现的构造函数
class MyClass {
    private MyInterface myInterface;

    public MyClass(MyInterface myInterface) {
        this.myInterface = myInterface;
    }

    public void performAction() {
        myInterface.doSomething();
    }
}

// 测试代码
public class Main {
    public static void main(String[] args) {
        MyClass classInstanceA = new MyClass(new ClassA());
        classInstanceA.performAction(); // 输出 "ClassA do something"

        MyClass classInstanceB = new MyClass(new ClassB());
        classInstanceB.performAction(); // 输出 "ClassB do something"
    }
}

在上面的示例中,我们定义了一个接口MyInterface,并让ClassAClassB分别实现了这个接口。然后在MyClass中,我们通过构造函数接收一个MyInterface类型的参数,并保存在实例变量myInterface中。在performAction方法中,我们调用了myInterfacedoSomething方法。

Main类中,我们创建了MyClass的两个不同实例,分别传入ClassAClassB的实例作为参数,然后调用performAction方法,即可实现不同的类实现相同的接口传递给构造函数的目的。

相关内容

热门资讯

黑科技辅助(德州之星app安卓... 黑科技辅助(德州之星app安卓版)AApoker素来真的有挂!太实锤了好像存在有挂(2023已更新)...
黑科技总结(aapoker有挂... 黑科技总结(aapoker有挂)AaPOKER一向存在有挂!太无语了本然是真的有挂(2020已更新)...
黑科技系统(微扑克微乐)wep... 黑科技系统(微扑克微乐)wepOke真是存在有挂!太嚣张了总是真的有挂(2026已更新)(哔哩哔哩)...
黑科技能赢(微扑克脚本)nzt... 黑科技能赢(微扑克脚本)nzt德州确实有挂!太实锤了原生存在有挂(2023已更新)(哔哩哔哩);1分...
黑科技有挂(德扑给好牌)EV扑... 黑科技有挂(德扑给好牌)EV扑克往昔真的是有挂!太夸张了原先存在有挂(2026已更新)(哔哩哔哩)关...
黑科技苹果版(wpk外挂)微扑... 黑科技苹果版(wpk外挂)微扑克wpk最初是真的有挂!太离谱了本来是有挂(2026已更新)(哔哩哔哩...
黑科技私人局(pokerwor... 黑科技私人局(pokerworld下载)德州aa扑克先前是有挂!太夸张了一贯是真的有挂(2022已更...
黑科技中牌率(wepoke规律... 1、黑科技中牌率(wepoke规律)poker master安卓版从来是有挂!太坑了原先有挂(202...
黑科技模拟器(WPKplus)... 黑科技模拟器(WPKplus)aa州克原本是有挂!太坑了都是真的有挂(2021已更新)(哔哩哔哩)1...
黑科技讲解(wpk辅助器)aa... 黑科技讲解(wpk辅助器)aapOKER最初是有挂!太离谱了起初真的有挂(2026已更新)(哔哩哔哩...