Java基础-含泪撰写

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/level__1/article/details/79859794

1.抽象类与接口的异同

*都是上层抽象层,不能直接被实例化。都包含抽象方法,描述类具备的功能。

*抽象类可以包含非抽象普通的方法,子类直接继承就可以使用,提高代码复用。这抽象类的优势,接口只能定义抽象方法。

*单继承,多实现。一个类只能继承一个父类,这个当然可以是抽象类,也可以是普通的类。但一个类可以实现多个接口。


*抽象类中的方法如果没被子类全部实现,那这个子类也必须是抽象类。接口中的方法如果没被子类实现,同样这个之类也必须是抽象类。

*抽象类和接口不能直接实例化,所以其中方法不能是static,或者private的

*接口是对动作的抽象,而抽象类是对根源的抽象对于抽象类,比如男人,女人这两个类,那我们可以为这两个类设计一个更高级别的抽象类--人。对于接口,我们可以坐着吃饭,可以站着吃饭,可以用筷子吃饭,可以用叉子吃饭,甚至可以学三哥一样用手抓着吃饭,那么可以把这些吃饭的动作抽象成一个接口--吃饭。所以在高级语言中(如Java,C#),一个类只能继承一个抽象类因为你不可能同时是生物又是非生物)。但是一个类可以同时实现多个接口,比如开车接口,滑冰接口,啪啪啪接口,踢足球接口,游泳接口。


2.访问修饰符

public 整个项目都可以访问

protect 本包及其子类(可能在包外)都可以访问

defalt 本包访问权限

private 私有的,本类访问权限


3.swith(expresion)

expresion可以是byte, Byte,short, Short, int, Integer, char, Character,  String, enum


4.String StringBuffer StringBulid

String 长度不可变,StringBuffer长度可变,线程不安全但速度快,StringBulid线程安全但速度慢


5.集合框架

                    有两大家族

coolection                                Map

|                                                     |

List(列表)    Set(集)     queue        |

|                       |               |            |


List有序可重复,List关注的是索引,查询速度快,增加删除会伴随着后面数据的移动,所以速度慢。

Set无序不可重复

Map键值对,先对key进行遍历得到一个Set集合,再对Set集合进行遍历得到相应的值


有两种常用的迭代方式:

Iterator迭代输出

foreach,for迭代输出


所有的集合类都实现了Iterator接口,常用的三个方法:

hasNext()是否还有下一个元素

next()返回下一个元素

remove()删除当前的元素


6.排序

插入排序

选择排序




猜你喜欢

转载自blog.csdn.net/level__1/article/details/79859794