Java复习——基础篇:抽象类和接口

本文深入探讨了抽象类和接口的使用要点,包括抽象类如何避免子类设计的随意性,其不能实例化的特性,以及如何通过子类实现抽象方法。同时,详细解释了接口的规范实现,以及接口与抽象类的主要区别。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

抽象类使用要点
1.通过抽象类,可以避免子类设计的随意性
2.有抽象方法的类只能定义成抽象类
3.抽象类不能实例化,及不能用new来实例化抽象类
4.抽象类可以包含属性、方法、构造方法。但是构造方法不能用来new实例,只能用来被子类调用。
5.抽象类只能用来继承
6.抽象方法必须被子类实现

package com.zjn.oop.abstractClass;

public abstract class Animal {
    String str;
    //抽象方法
    public abstract void run();
    //普通方法
    public void breath(){
        System.out.println("呼吸");
    }
}
class Cat extends Animal{

    @Override
    public void run() {
        System.out.println("猫步小跑");
    }
}
class Dog extends Animal{

    @Override
    public void run() {
        System.out.println("狗跑");
    }

抽象类还提供某些具体实现,接口不提供任何实现,接口中所有方法都是抽象方法。
接口中只包含常量和抽象方法,接口中属性只能是常量,总是:public static final修饰
方法:接口中方法只能是public abstract

package com.zjn.oop.testInterface;

public interface MyInterface {
    /*public static final*/String MAX_GREAD = "BOSS";
    int MAX_SPEED = 120;
    
    public void test01();
    public int test02(int a,int b);
}

package com.zjn.oop.testInterface;

public interface MyInterface {
    /*public static final*/String MAX_GREAD = "BOSS";
    int MAX_SPEED = 120;
    
    public void test01();
    public int test02(int a,int b);
}

接口使用要点
1.子类通过implements来实现接口中的规范
2.接口不能创建实例,但是可用于声明引用变量类型
3.一个类实现了接口,必须实现接口中所有的方法,而且这些方法必须是public的
4.接口中只能包含静态常量、抽象方法,不能有普通属性、构造方法、普通方法
5.接口完全支持多继承。和类的继承类似,子接口扩展某个父接口,将会获得父接口中所定义的一切。

package com.zjn.oop.testInterface;

public interface Flyable {
    int MAX_SPEED = 11000;
    int MIN_HEIGHT = 1;
    void fly();
}
interface Attrack{
    void attrack();
}
class Stone implements Flyable,Attrack{
    int weight;

    @Override
    public void fly() {
        System.out.println("11");
    }

    @Override
    public void attrack() {
        System.out.println("22");
    }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值