每日一问
SillyDuckkk
来日可期✿
展开
-
[每日一问]---hashCode()和equals()方法的重要性体现在什么地方?
Java中的HashMap使用hashCode()和equals()方法来确定键值对的索引,当根据键获取值的时候也会用到这两个方法。 如果没有正确的实现这两个方法,两个不同的键可能会有相同的hash值,因此可能会被集合认为是相等的。 而且,这两个方法也用来发现重复元素,所以这两个方法的实现对HashMap的精确性和正确性是至关重要的。HashMap的很多函数要基于hashCode()方法和equ原创 2018-03-15 19:11:39 · 4379 阅读 · 0 评论 -
[每日一问]---Java中支持的数据类型有哪些?什么是自动装箱和拆箱?
Java支持的数据类型包括两种:基本数据类型、引用类型 1)基本数据类型有8种: byte、short、int、long、float、double、boolean、char 2)引用类型: 如String、包装类等自动装箱是Java编译器在基本数据类型和对应的对象包装类型间的转化,即int转化为Integer,自动拆箱是Integer调用其方法将其转化为int的过程。 所以自动装箱和拆箱就原创 2018-03-16 23:52:26 · 328 阅读 · 0 评论 -
[每日一问]---Java中的方法重写(Overriding)和方法重载(Overloading)是什么意思?
方法重写是子类重新定义父类的方法 方法重载发生在同一个类里两个或多个方法的方法名相同但是参数列表不同1)方法重写的原则:方法名、参数列表必须与原方法相同返回类型可以相同也可以是原类型的子类型(从Java SE5开始支持)重写方法的访问权限不允许缩小,不能比原方法访问性差重写方法不能比原方法抛出更多的异常final修饰的方法是无法重写的private修饰的方法是无法重写的static修原创 2018-03-17 11:46:04 · 683 阅读 · 0 评论 -
[每日一问]---什么是Java虚拟机?为什么Java是“与平台无关的编程语言”?
1)Java虚拟机,Java Virtual Machine即JVM,是一个可以执行Java字节码的虚拟机进程。Java源文件被编译成能被Java虚拟机执行的字节码文件。2)Java被称作“与平台无关的编程语言”,即Java的跨平台性。Java源程序先经过javac编译成二进制的.class字节码文件,.class文件再运行在JVM上,然后java解释器(JVM的一部分)会将其解释成对应平台的...原创 2018-03-12 10:07:04 · 892 阅读 · 0 评论 -
[每日一问]---JDK和JRE的区别是什么?
JRE:Java Runtime Environment,即Java运行时环境,包含了Java虚拟机、Java核心类库和支持文件。是使用Java语言编写的程序运行所需要的软件环境,是提供给想运行Java程序的用户使用的。JDK:Java Development Kit,即Java开发工具包,包含了JRE、编译器和其他的工具(JavaDoc、Java调试器等)。是程序员使用Java语言编写程序所需要的原创 2018-03-13 19:52:42 · 167 阅读 · 0 评论 -
[每日一问]---“static”关键字是什么意思?Java中可以重写一个static方法吗?
1)static表示静态的意思,表明一个被其修饰的成员变量(类成员)或者是成员方法(类方法)可以在没有所属类的实例变量的情况下被访问。2)Java中不可以重写static方法,因为重写Override是基于运行时动态绑定的,而static方法是编译时静态绑定的。static方法跟类的任何实例都不相关,所以不可以重写static方法。PS:Java中也不可以重写一个private方法,因为p...原创 2018-03-14 12:54:29 · 586 阅读 · 0 评论