【Java】抽象类(abstract)、接口(interface)

简介: 【Java】抽象类(abstract)、接口(interface)

前言

写在前面的话,不听b站老师的话,不写博客又加之不经常用JAVA,导致现在遗忘十分严重,古人云:亡羊补牢,为时未晚。故今日做补牢之举。勉之!


一、抽象类

抽象类类中可以没有抽象方法,但如果有抽象方法,则该类一定是抽象类。抽象方法只写方法的声明,具体实现交给子类(非抽象类)去实现。

public abstract class Abstract {
    public abstract void run();
}

如上,声明了一个run的抽象方法,具体的实现交给子类。

public class Demo01 extends Abstract{
        @Override
        public void run()
        {
            System.out.println("一直努力的向前奔跑");
        }
}

子类需要先继承抽象类(extends),然后重写父类中所有的抽象方法。

抽象类的特点:
    1、抽象类中没有构造方法,所以不能够直接实例化对象

    2、抽象类中可以没有抽象方法,但有抽象方法的一定是抽象类。

    3、抽象方法需要一个非抽象子类,来继承,重写方法。

    4、抽象类只能单继承,不能够多继承(Class cannot extend multiple classes)

二、接口

接口的本质是契约,最主要的重要是约束和实现的分离
创建一个接口

public interface Demo02interface {
    void walk();
}

用到interface关键字,它和class是同级的。

1、接口中没有构造方法,所以不能直接实例化对象,interface
2、接口中只有常量 public static final
3、接口中不能写方法体
4、所有的方法默认都是抽象的
5、子类需要用implements来使用接口,同时要重写(@Override)接口的方法
6、接口可以实现多继承 接口要用,来分隔(多继承确实牛啊)

接口的多继承

public class Demo03 implements Demointerface,Demo02interface{
    @Override
    public  void run()
    {
        System.out.println("我一直在努力的奔跑");
    }
    public void walk()
    {
        System.out.println("走累了,就歇一会");
    }
}

总结

前路茫茫,与君共勉 安静的进步,快乐的学习

相关文章
|
2月前
|
Java 开发者
在 Java 中,一个类可以实现多个接口吗?
这是 Java 面向对象编程的一个重要特性,它提供了极大的灵活性和扩展性。
160 57
|
14天前
|
数据采集 JSON Java
利用Java获取京东SKU接口指南
本文介绍如何使用Java通过京东API获取商品SKU信息。首先,需注册京东开放平台账号并创建应用以获取AppKey和AppSecret。接着,查阅API文档了解调用方法。明确商品ID后,构建请求参数并通过HTTP客户端发送请求。最后,解析返回的JSON数据提取SKU信息。注意遵守API调用频率限制及数据保护法规。此方法适用于电商平台及其他数据获取场景。
|
19天前
|
安全 Java API
java如何请求接口然后终止某个线程
通过本文的介绍,您应该能够理解如何在Java中请求接口并根据返回结果终止某个线程。合理使用标志位或 `interrupt`方法可以确保线程的安全终止,而处理好网络请求中的各种异常情况,可以提高程序的稳定性和可靠性。
46 6
|
2月前
|
Java API
Java中内置的函数式接口
Java中内置的函数式接口
27 2
|
2月前
|
Java
在Java中,接口之间可以继承吗?
接口继承是一种重要的机制,它允许一个接口从另一个或多个接口继承方法和常量。
124 1
|
2月前
|
Java
Java基础(13)抽象类、接口
本文介绍了Java面向对象编程中的抽象类和接口两个核心概念。抽象类不能被实例化,通常用于定义子类的通用方法和属性;接口则是完全抽象的类,允许声明一组方法但不实现它们。文章通过代码示例详细解析了抽象类和接口的定义及实现,并讨论了它们的区别和使用场景。
|
3月前
|
安全 Java 数据安全/隐私保护
【一步一步了解Java系列】:探索抽象类与接口的秘密
【一步一步了解Java系列】:探索抽象类与接口的秘密
28 3
|
4月前
|
Java
Java——抽象类和接口
抽象类是一种不能被实例化的类,至少包含一个抽象方法(无实现体的方法),常用于定义一组相关类的共同特征,并强制子类实现特定方法。抽象方法不能被 `static` 或 `final` 修饰,且必须被重写。 接口则是一个完全抽象的类,用于规范类的行为。接口使用 `interface` 关键字定义,不能实例化,并且类与接口之间是实现关系。 内部类是在一个类内定义的类,分为成员内部类、静态内部类、局部内部类和匿名内部类。成员内部类可被修饰符修饰,静态内部类只能访问外部类的静态成员,局部内部类定义在方法内,匿名内部类则隐藏了名字,直接通过 `new` 关键字定义并实现接口或继承类。
29 5
Java——抽象类和接口
|
3月前
|
Java
Java中抽象类和接口有什么区别?
本文阐述了Java中抽象类和接口的区别,包括类型扩展、方法/属性访问控制符、方法实现、使用目的等方面的不同,并提供了抽象类和接口的使用示例,以及Java中其他类型的类(普通类、内部类等)的简介。
447 0
Java中抽象类和接口有什么区别?
|
3月前
|
Java 编译器
【Java】用一个动物王国的例子,讲清楚抽象类和接口
【Java】用一个动物王国的例子,讲清楚抽象类和接口
38 0