Java基础进阶 抽象类、接口

抽象类
1.抽象类无法实例化对象,它是被用来继承的。但是抽象类有构造方法供子类使用

2.final与abstract不能联合使用

3.抽象类不一定有抽象方法,抽象方法
必须出现在抽象类中

4.定义:public abstract void doSome();

5.(重点)非抽象类继承抽象类,必须将抽象类中的方法进行重写

6.以下语句错误:凡是没有方法体的方法都是抽象方法

接口
1.接口是一种“引用数据类型”,且是完全抽象的

2.接口支持多继承

3.接口中只有常量与抽象方法

4.接口中所有元素都是publlic修饰,抽象方法中public abstract可省略,接口中常量public static final可以省略

5.接口中方法不能有方法体

6.当一个非抽象类实现接口时,需要重写接口中所有方法

package com.javastudy.example03;

public class Dog extends Animal1 implements Fly,Eat{
    void move() {
        System.out.println("重写抽象类dog move!");
    }
    public void fl() {
        System.out.println("重写接口dog fly!");
    }

    public void eat() {
        System.out.println("重写接口dog eat!");
    }
    public static void main(String[] args) {
        Dog dog = new Dog();
        dog.fl();
        dog.eat();
        System.out.println(dog.length);
        //多态
        Fly dog1=new Dog();
        dog1.fl();
        System.out.println(dog1.length);
       // dog1.eat(); 错误
//多态
        Eat cat=new Cat();
        //cat.fly();  错误
        cat.eat();
    }
    static class Cat implements Fly,Eat{
        public void eat() {
            System.out.println("重写接口cat eat!");
        }
        public void fl() {
            System.out.println("重写接口cat fly!");
        }
    }
}


posted @   零基础科班  阅读(26)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 因为Apifox不支持离线,我果断选择了Apipost!
· 通过 API 将Deepseek响应流式内容输出到前端
点击右上角即可分享
微信分享提示