• 接口中的方法和变量


    1.接口的定义格式:

              Interface 接口名称{}

    2.接口中的变量一定是常量:

              public static final 变量名=变量值;       

    3.接口中的方法没有方法体,且方法的修饰符public abstract可以省略:

              [public abstract] 返回值类型 方法名称(参数列表);

    4.当接口中需要增加方法,而不想影响到其他实现该接口的类时,可以使用默认方法,默认方法也可以被重写:

              public default 返回值类型 方法名(参数列表){ ...}

    5.私有方法只能在接口内部被访问,具有安全性,同时可以减少代码冗余:

              private 返回值类型 方法名(参数列表){ ...}

    注意:接口中的方法不一定都是抽象方法,在JDK8,JDK9中,接口可以有默认方法,私有方法。

    代码演示:

    interface Animal {
        //常量年龄为2岁
        public static final int age=2;
        //抽象方法eat()
        public abstract void eat();
        //默认方法run()
        public default void run(){
            System.out.println("动物在跑");
        }
        //静态方法sleep()
        public static void sleep(){
            System.out.println("动物在睡觉");
        }
        //私有方法play()
        private static void play(){
            System.out.println("开始游戏");
            System.out.println("暂停游戏");
            System.out.println("继续游戏");
            System.out.println("结束游戏");
        }
        //默认方法happy()
        public default void happy(){
            //调用了私有方法play(),可以减少代码冗余,同时不让接口以外访问到,具有安全性
            play();
            System.out.println("玩得很开心");
        }
    }
    public class Cat implements Animal{
        //重写eat()抽象方法
        @Override
        public void eat() {
            System.out.println("猫在吃");
        }
        //重写默认方法run()
        @Override
        public void run() {
            System.out.println("猫在跑");
        }
    }
    public class Demo6{
        public static void main(String[] args) {
            Cat cat=new Cat();
            System.out.println("猫的年龄是"+cat.age);
            cat.eat();
            cat.run();
            cat.happy();
            Animal.sleep();
        }
    }

    运行结果:

  • 相关阅读:
    django的命令, 配置,以及django使用mysql的流程
    vue中局部组件的使用
    Chapter14【Collection、泛型】
    泛型
    集合遍历的方式(迭代器和增强for)
    Collection集合
    集合
    数组
    包装类
    基本类型与字符串之间的转换
  • 原文地址:https://www.cnblogs.com/iceywu/p/12017497.html
Copyright © 2020-2023  润新知