java面试基础问题
文章平均质量分 92
总结自己总结的java面试基础问题
ProLayman
这个作者很懒,什么都没留下…
展开
-
Java面试基础问题之(八)—— ==引出的常量池(待补充)
==比较的是大小和内存地址1) 对于基本类型== 比较的就是值,更具体的说,比较的就是基本类型的二进制值(boolean就是false/true),e.g.结果:2) 引用类型== 比较的是内存的地址,e.g.结果:严格说来,这样并不严谨,因为System.out.print()/println()打印引用变量时,默认调用对象的toString()方法...原创 2019-07-23 00:47:42 · 208 阅读 · 0 评论 -
Java面试基础问题之(七)—— 方法的重载 VS 覆写规则
一. Java方法声明的众多属性在讨论重载和覆写的区别之前,先补充一下Java方法的背景知识,看下面最为常见的main方法声明,当然为了完整介绍,自行加了异常的抛出:public staticvoidmain(String[] args)throws Exception {...} ① ② ③ ④ ...原创 2019-07-23 20:58:40 · 1473 阅读 · 1 评论 -
Java面试基础问题之(六)—— 不能被继承:final,private,static和构造方法
我们知道,final,private,static和构造方法都是无法被继承的,但是细究起来还是稍有区别,看代码:测试类:Father:同包下子类:来一个一个分析,首先:final方法:很干脆,注释显示:final不能被覆写。private方法:并没有报错,但是回想一下Java修饰符那节:private下,父类的testPrivate()方法对于子类Son...原创 2019-07-16 16:20:37 · 730 阅读 · 0 评论 -
Java面试基础问题之(三)—— Java的值传递
Java中的数据类型可以归为两大类:基本类型和引用类型,前者不用多说,boolean,byte,char short,int,long,float,double 8种基本类型,后者即为所有的类,当然,数组也可以归为类。基本类型不用讨论,就是值传递(值拷贝),方法中对值的改变不影响原参数的值,下面重点探讨引用类型的参数传递方式。 先看一个例子:测试类:测试类的两个方...原创 2019-07-16 14:14:39 · 255 阅读 · 0 评论 -
Java面试基础问题之(四)—— 类的初始化顺序
先放结论:静态 > 大于非静态父类 > 子类一个类初始化中,构造方法最后具体说来:父类静态代码块 --> 子类静态代码块(--> 父类非静态代码块-->子类非静态代码块 --> 父类构造方法 --> 子类构造方法)1)打括号的是创建子类对象才会进行的步骤2)静态变量的声明和初始化都归结为静态代码块中了,相应地,...原创 2019-07-02 11:33:02 · 136 阅读 · 0 评论 -
Java面试基础问题之(三)—— Java的默认构造方法
一.构造方法不用加返回类型,首字母大写这与类的一般方法有所区别:必须要有返回类型,方法名推荐使用小驼峰法。二. 默认构造方法的访问修饰符继承自类的访问修饰符但是一旦你重载了,就是你写的那个权限,当然地,如果上面都没加,就是default,包权限。注意,如果类的访问修饰符是public,那么四种访问修饰符构造方法都可以使用(只能缩小权限)。这里另注意一个问题:修饰类的访问符就两...原创 2019-06-28 19:56:52 · 1666 阅读 · 0 评论 -
Java面试基础问题之(二)—— Java的四种访问修饰符
一. 一张表一般这种问题都是先摆上一张表,如下: 权限 类内 同包 子类 不 同 包 private ...原创 2019-06-28 13:11:33 · 604 阅读 · 1 评论 -
Java面试基础问题之(二十一)—— 线程持有的任何对象.wait()都会使线程陷入阻塞吗
直接上代码:结果:抛出了一个异常:IllegalMonitorStateException去官方文档查看IllegalMonitorStateException类(是个Exception的子类)的信息:PS:链接:Class IllegalMonitorStateException类说明:Thrown to indicate that a thread has...原创 2019-09-19 10:11:11 · 840 阅读 · 0 评论 -
Java面试基础问题之(九)—— 也说hashCode() 和 equals()
一 为什么还要写关于这两个方法的比较,解释特别多,但是大部分都是复制粘贴,把hashCode()的JavaDoc一条一条翻译过来,但如果问为什么有这些规定,这些规定有什么意义?恐怕很多作者自己也不知道为什么。这里尽我的理解好好写一篇二者的介绍与比较,顺便自己捋捋思路。二 最初的起源这两个方法最初都来源于Object:hashCode():equals:可以看到,二者...原创 2019-09-12 13:41:38 · 339 阅读 · 0 评论 -
MySQL必知必会笔记
15.聚集函数AVG(columnName)不会统计该列值为NULL的列14.数学函数13.使用Date取出datetime中的date当然,Time(order_time)能取出时间类似的方法有:Year(datetime),Month(datetime),Day(datetime),Hour(datetime),Minu...原创 2019-09-06 21:15:49 · 199 阅读 · 0 评论 -
刘悦栋SSH史上最牛逼的SSH三大框架讲解之Hibernate(学习笔记)——(一)
刘悦栋SSH史上最牛逼的SSH三大框架讲解之Hibernatehttps://www.kanbilibili.com/video/av21895930/index_11.htmlIDEA自动生数据库中table对应的实体类和hibernate的映射文件注意有坑:这样会修改你的hibernate.cfg.xml文件。sql99:DDL:数据库定义(Definition...原创 2019-09-05 22:55:57 · 453 阅读 · 0 评论 -
Java面试基础问题之(知识补丁)—— Java中多态的实现方式
Java中多态的实现方式静态多态:重载动态多态:覆写,而覆写有两种方式:继承(多个子类对同一方法的重写)和接口(实现接口并覆盖接口中同一方法)...原创 2019-08-28 18:55:07 · 148 阅读 · 0 评论 -
Java面试基础问题之(十五)—— 堆排序有趣的点
1.初始化时,为什么要全部放入完全二叉树中再调整,而不是用put()一个一个插入?复杂度不同全部放入再调整,第一个开始调整的节点是第一个非叶子节点,每个节点只需要“向下调整”,调整的最大次数即节点到叶子的“高度”。一个一个插入,每个节点总是插入在完全二叉树的最后一个节点上,需要“向上”调整,调整的最大次数即节点到根的“深度”。O(2N) vs O(NlogN)。具体证明比较简单...原创 2019-09-22 00:50:32 · 200 阅读 · 0 评论