什么是抽象?
允许把类和方法体声明为abstract,即抽象类和抽象方法
注意
1、抽象类不能实例化
2、抽象方法是必须被子类重写的方法
3、如果类中包含抽象方法,那么类就必须定义为抽象类,不论是否还包含其他一般方法
什么是接口?
接口是把隐式公共方法和属性组合起来,以封装特定功能的一个集合,
注:接口的命名,前面要加一个大写字母“I”,接口中的方法或属性签名不能有修饰符。方法没有方法体
那么,类一旦实现了接口呢?
一旦类实现了接口,类就可以支持接口所指定的所有属性和成员
抽象类和接口的区别
1、抽象类可以给出一些成员的实现,接口却不包含成员的实现
2、类是对对象的抽象,抽象类是对类的抽象,接口是对行为的抽象
3、如果行为跨越不同类的对象,可以使用接口。相似的类对象,使用继承抽象类
我们刚开始用的是数组,那数组的优缺点是什么?
优点
1、可以快速而容易地从头到尾遍历元素
2、可以快速修改元素
缺点
1、创建时必须要指定数组变量的大小
2、在两个元素之间添加元素也比较困难
所以才有了接下来的集合。
那什么是集合?
用于数据存储和检索的专用类,这些类统称为集合
集合和数组的区别是什么?
数组的容量是固定的,集合的容量可根据需要自动扩充
集合的好处和不足
好处:集合可以随意地添加、插入或移除某一范围元素
不足:不管什么对象都是接受的;ArrayList不是类型安全的
什么是泛型?
泛型允许编写一个可以与任何数据类型一起工作的类或方法
泛型的特性
1、有助于最大限度地重用代码、保护类型的安全以及提高性能
2、可以创建自己的泛型接口、泛型类、泛型方法、泛型事件和泛型委托
3、可以对泛型类进行约束以访问特定数据类型的方法