抽象类
什么是抽象类?
针对一个事物,如果这个事物并不是具体事物,而是概括性的(需要抽象修饰这个类),将当前这个类定义为抽象类
格式: abstract class 类名{}
什么是抽象方法?只是给定义一个方法声明,没有方法主题{}
权限修饰符 返回值类型 方法名();
抽象类的特点: 抽象类不能实例化(不能创建对象)
1.如果一个类中有抽象方法,那么这个类一定是抽象类
2.抽象类中不一定都是抽象方法,也可以是非抽象的.
3.子类是抽象类的情况 一般是没有意义的
父类已经不能实例化了
应该才用的父类引用执行子类对象
子类都是具体类的情况: 创建对象需要通过子类在实例化
接口
接口的定义:体现的一种扩展性(显示世界事物额外的行为)
接口定义的格式:
interfac 接口名{}
定义接口名和定义类名的规则是一样的,单个单词第一个字母大写 多个单词 每个单词首字母大写
接口中的方法是抽象方法
注意事项:
1.接口不能实例化
2.接口的子实现类和接口的关系
implements 实现关系
接口的子实现类是抽象类的情况:子类是抽象的; 无法实例化
接口子实现类是具体类的情况
接口的子实现类都是具体类
如何实例化 接口多态实例化
接口名 对象名 =new 子实现类类名();实例化 通过子类实例化
实际开发中 定义接口: interface 接口名{}
字实现类的命名
class 类名 imp1 implements 接口名{}
接口中的成员特点
成员变量:
存在默认的修饰符 public static final 接口变量只能是常量
被静态修饰的成员变量:可以被类名或者接口名访问
构造方法:
没有构造方法
成员方法:
接口的方法是抽象方法,存在默认修饰符 public abstract
类与类的关系
extends 继承关系 只支持单继承,不支持多继承,但是可以多层继承
类与接口的关系
implements 实现关系 并且一个类继承自另一个类的同时,可以实现多个接口
java中任意类(自定义的类,官方提供的api的类)继承来自Object
接口与接口的关系
extends 继承关系: 可以单继承,也可以多继承(多继承技术仅限于java中的接口)
选择排序
使用0索引对应的元素一次和后面索引对应的元素进行比较,第一次比较完毕,最小值就出现在最小索引处,然后一次比较
规律:
使用0索引对应的元素和后面索引对应的元素比较
...........
来源:CSDN
作者:sptnd
链接:https://blog.csdn.net/qq_42565521/article/details/103896343