java知识点总结

生来就可爱ヽ(ⅴ<●) 提交于 2020-01-29 07:40:34

1.Java三大特性

三大特性:继承 ,封装,多态。

封装:是指属性私有化,使用者可通过get ,set等方法来访问属性,隐藏具体属性和实现细节,仅仅对外开放接口,控制车程序中属性的访问级别。
封装的目的:增加安全性和简化编程,使用者不必在意具体实现细节,而只通过外部接口即可访问类的成员。

继承:是指将相同的方法和成员提取出来,新建一个类
继承的目的:代码复用

多态:多态又分为设计时多态和运行时多态
设计时多态:即重载,即java方法名相同而参数个数或参数类型不同
运行是多态:即重写,是指java运行根据调用者的类型,判断调用哪个方法。
多态的目的:增加代码的灵活度

2.abstract class和interface的区别

abstract class抽象类
构造出一个固定的一组行为的抽象描述,但是这组行为却能够有任意个可能的具体实现方式。这个抽象描述就是抽象类。
interface接口
接口是一系列方法的声明,是一些方法特征的集合,一个接口只有方法的特征没有方法的实现,因此这些方法可以在不同的地方被不同的类实现,而这些实现可以具有不同的行为(功能)。
区别
1、抽象类中可以有构造函数,接口里没有。
2、抽象类中可以有普通成员变量,接口中没有普通成员变量。
3、抽象类可以有包含非抽象的普通方法,接口中的方法都必须是抽象的。
4、抽象类中的方法可以是public,protect和默认的(defult)接口中的方法必须是public。
5、抽象类中可以有静态方法,接口中不能有静态的方法。
6、抽象类和几口中都可以有静态成员变量,抽象类中的静态成员变量的访问类型可以是任意的,但是接口里的成员变量的访问类型必须是public static final 。

final关键字的作用(变量、函数、类)

final变量
一旦变量被设定,就不可以再改变该变量的值,该变量即是常量
final函数
final的方法不能被重写。
final类
final的类不能被继承
final关键字的好处
1、final关键字提高了性能,JVM和java都会缓存final变量。
2、final变量可以安全的在多线程下共享,不需要额外的同步开销
3、使用final关键字,JVM会对方法,变量以及类进行优化

static关键字的作用

staticl关键字主要有两种作用:
1、为特定数据类型或对象分配单一的存储空间,而与创建对象的个数无关。
2、某个方法或属性与类而不是与对象关联在一起。

HashMap的遍历方式

第一种,使用HashMap.entrySet得到键值对的集合
第二种、使用HashMap.keySet得到键的集合
第三种、使用HashMap.values()得到值的集合

重写和重载的区别

重写
是父类与子类间的多态,实质是子类对父类函数的重新定义。
子类对
重载
让类以同一种方式处理不同数据的手段,实质的表现是具有不同的参数类型或者不同参数个数的同名函数同时存在同一个类中。是同一个类中多态的表现

如何比较两个对象是否相等

equals用来比较两个对象的内容是否相同,== 用来比较两个应用的地址是否相同

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!