系列十六、抽象类 & 接口
2024-01-10 11:15:53
一、抽象类 & 接口
1.1、抽象类
1.1.1、概述
????????被abstract修饰的类,称之为抽象类。抽象类中可以一个抽象方法也没有,但是如果一个类中有抽象方法,此类必须为抽象类。
1.1.2、特点
????????抽象类中可以有抽象方法也可以全部都是普通方法(包括实例方法、静态方法),同时在抽象类中可以定义实例成员属性、静态成员属性,还可以书写构造方法。
1.1.3、案例
/**
* @Author : 一叶浮萍归大海
* @Date: 2024/1/9 21:08
* @Description:
* Spurt fire:喷火
* ride on a cloud:腾云驾雾
*/
public abstract class Dragon {
/**
* 实例成员属性
*/
private Integer footNumber;
/**
* 静态成员属性
*/
private static String headNumber;
/**
* 构造方法
*/
public Dragon() {
}
/**
* 抽象方法:喷火
* @return
*/
public abstract String spurtFire();
/**
* 实例方法
*/
public void sleep() {
}
/**
* 静态方法
*/
public static void rideOnACloud() {
}
}
1.1.4、抽象类和普通类的区别
(1)抽象类可以有抽象方法,普通类没有抽象方法;
(2)普通类可以创建对象,但是抽象类不能创建对象(抽象类可以有构造方法);
1.2、接口
1.2.1、概述
????????接口类似于抽象类,只不过接口中的方法必须全部为public abstract修饰的抽象方法,接口中也不能够有构造方法;接口中的成员变量必须被public static final修饰,抽象方法默认被public abstract修饰,成员变量默认被public static final修饰。
1.2.2、案例
public interface HiService {
public static final String NAME = "小明";
String DESCRIPTION = "法外狂徒小明";
/**
* 打招呼
*
* @param name
*/
void sayHello(String name);
/**
* 打招呼
* @param name
*/
public abstract void sayHi(String name);
}
文章来源:https://blog.csdn.net/HelloWorld20161112/article/details/135489906
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!