您的位置:首页 > 编程语言 > Java开发

初级java面试题,看看你会几道-动力节点

2020-09-30 09:10 761 查看
1、说几种常见的***方式及预防手段。

XSS/CSRF/DDOS,后面啥来着?

2、http1.x和http2.x的区别。

http2.0增加多路复用、二进制分帧、首部压缩、服务器推送。

3、Mysql查询语句怎么做性能分析。[请添加链接描述](http://www.bjpowernode.com/javavideo/111.html)

使用explain或者profile命令。

4、你知道哪几种排序算法?

冒泡、选择、插入、希尔、快速、堆、归并、桶排序。

5、HashMap和HashTable的区别,并说明其底层实现数据结构。

HashMap非线程安全,HashTable线程安全。

6、HashMap满了之后怎么扩容?

loadfactor为扩容因子,当数据容量超过最大容量*loadfactor时容量自动扩大2倍,并将当前的数据重新放入新的hashmap中,所以初始的定义大小为2^n的大小最佳。

7、Linux中远程传输文件有什么方式?

SCP、FTP等。

8、说说Java中异常的分类。

Throwable子类Exception、Error。

9、TCP和UDP的区别,TCP为什么是三次握手,不是两次。

1)基于连接与无连接

2)TCP要求系统资源较多,UDP较少。

3)UDP程序结构较简单。

4)流模式(TCP)与数据报模式(UDP)。

5)TCP保证数据正确性,UDP可能丢包。

6)TCP保证数据顺序,UDP不保证。为了防止已失效的连接请求报文段突然又传送到了服务端,因而产生错误,即重要的事情说三遍

10、说说数据库设计的三范式,可以违反三范式吗?

第一范式,又称1NF,它指的是在一个应用中的数据都可以组织成由行和列的表格形式,且表格的任意一个行列交叉点即单元格,都不可再划分为行和列的形式,实际上任意一张表格都满足1NF;

第二范式,又称2NF,它指的是在满足1NF的基础上,一张数据表中的任何非主键字段都全部依赖于主键字段,没有任何非主键字段只依赖于主键字段的一部分。即,可以由主键字段来唯一的确定一条记录。比如学号+课程号的联合主键,可以唯一的确定某个成绩是哪个学员的哪门课的成绩,缺少学号或者缺少课程号,都不能确定成绩的意义。

第三范式,又称3NF,它是指在满足2NF的基础上,数据表的任何非主键字段之间都不产生函数依赖,即非主键字段之间没有依赖关系,全部只依赖于主键字段。例如将学员姓名和所属班级名称放在同一张表中是不科学的,因为学员依赖于班级,可将学员信息和班级信息单独存放,以满足3NF。某些业务设计可以违反三范式。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: