0226学习笔记
0226学习笔记
接口
普通类:只有具体实现
抽象类:具体实现和规范(抽象方法)都有!
接口:只有规范!
接口是面向对象的精髓,是对对象的抽象。
public interface UserService {
//接口中的所有定义都是抽象的public abstract
void add();
}
public class UserServiceImpl implements UserService, TimeService{
@Override
public void add() {
}
}
//接口可实现多继承!
//实现了接口的类,就需要重写接口中的方法!
接口
-
约束:接口定义了一组规则,类实现接口时,必须遵守这些规则。
-
定义一些方法,让不同的人实现:接口主要用于定义方法,让不同的类去实现,以确保方法的统一性。
-
方法都是
public abstract
:在 Java 8 之前,接口中的方法默认是public abstract
,即所有方法必须被实现类实现。Java 8 引入了 默认方法(default
)和静态方法(static
):default
方法:可以在接口中提供默认实现,不强制子类必须重写。static
方法:可以在接口内实现静态方法,供所有实现类使用,但不能被子类重写。
interface Test { static void staticMethod() { System.out.println("接口的静态方法"); } } Test.staticMethod(); // 直接调用
-
属性都是public static final,即常量,不可更改
-
接口不能直接被实例化,因为接口中没有构造方法;但可以通过 实现类 或 匿名内部类 来实例化。
InterfaceName obj = new InterfaceName() { @Override public void method() { System.out.println("匿名内部类实现接口"); } }; obj.method();
-
一个类可以implements可以实现多个接口,从而获得多个接口的方法,实现多重继承的效果。
-
实现了接口的类,必须重写接口中的方法!
内部类
//一个JAVA类中可以有多个class,但只能有一个public class
//方法内也能有class,叫做局部内部类
成员内部类
内部类可以获得外部类的私有属性!
可以通过这个外部类来实例化内部类。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(1)