Java 接口

1.why need this conception?

需要让不同的类共享某些行为的情况。eg:电器共享开关行为

想象一下,你正在设计一款软件,用于控制各种家用电器,比如电视、空调和音响。这些设备都有一个共同的行为,那就是“开”和“关”。

解决方案: 使用接口,我们可以定义一个名为“可开关”的接口,它包含“开”和“关”两个方法。然后,电视、空调、音响和智能灯泡等类都可以实现这个接口,而不需要继承一个共同的基类。

通俗例子:

  • 接口:“可开关”(包含方法:开(), 关())
  • 实现类
    • 电视:实现“可开关”接口,提供具体的开关电视的代码。
    • 空调:实现“可开关”接口,提供具体的开关空调的代码。
    • 音响:实现“可开关”接口,提供具体的开关音响的代码。
    • 智能灯泡:实现“可开关”接口,提供具体的开关灯泡的代码。

通过这种方式,我们可以轻松地添加新的设备类型,而不需要修改现有的代码,也不需要担心不同设备之间的行为冲突。这就是接口在Java中的作用和为什么我们需要它们的原因。

 
public class second {
    public interface Animal { //各种动物叫接口
        void speak();
    }

    public static class Dog implements Animal {//狗叫实现接口
        @Override
        public void speak() {
            System.out.println("Woof!");
        }
    }

    public static class Cat implements Animal {//猫叫实现接口
        @Override
        public void speak() {
            System.out.println("Meow!");
        }
    }


        public static void main(String[] args) {
            Animal dog = new Dog();
            Animal cat = new Cat();

            dog.speak(); // Outputs: Woof!
            cat.speak(); // Outputs: Meow!

            // You can also store them in a common list
            Animal[] animals = { new Dog(), new Cat() };
            for (Animal animal : animals) {
                animal.speak(); // Outputs: Woof! Meow!
            }
        }

                
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值