牛客网笔试题 1

京东2019校招笔试Java开发工程师笔试题考点总结

该试卷总共有60道选择题。覆盖范围广。
多多刷题,然后多在题目中回顾所学。

  1. 软件生命周期模型:常考瀑布模型,螺旋模型,增量模型以及原型模型和迭代开发,熟练掌握每种模型的内容,并能说出它们的优缺点。
  2. 值类型和引用类型:值类型是包括八种基本数据类型,值类型是存储在栈中的,但是当值类型作为对象的成员变量时,值类型的数据存储在堆中。引用类型是指类,数组和接口。引用类型的数据并不是直接存储在栈中,而是JVM会在堆中给数据分配内存,堆存储数据。
  3. 死锁的四个条件:互斥,占有并等待,不强占,循环等待。
    解决死锁:死锁预防,死锁避免,死锁检测与恢复,
  4. (8)堆排序:大顶堆和小顶堆算法的实现。
  5. (12)求二叉树结点个数。叶子节点个数=出度为2 的节点+1;
  6. (14)哈夫曼树的权值计算:先选出两个最小的权节点,把二者相加,然后不断地循环这个过程,如果下一次两个最小权值=前一轮的和,则二叉树向上生长,否则并列生长。
  7. (17)物理层:中继器、集线器
    数据链路层:网桥、交换器
    网络层:路由器
    网络层以上:网关
  8. (19)滑动窗口协议有
    停止等待协议,发送窗口=1,接受窗口=1;
    退后N帧协议,发送>1,接收=1;
    选择重传协议,发送>1,接收>1;
  9. (20)TCP的三次握手和四次挥手
  10. (21) TCP是面向连接的协议,能提供安全,可靠,有序的数据传输,保证数据无差错,不丢失,不重复按序到达。那么TCP是如何保证可靠传输的?
    校验和;流量控制;拥塞控制
    拥塞控制是作用于网络的,防止过多的数据出现在网络中,导致网络负载过大,主要通过慢开始,快重传,快恢复和避免拥塞来实现的。
    发送方一开始传输的时候采用慢开始,按照指数的增长, 当cwnd>ssthresh时就开始采用拥塞避免算法
    快重传是指当接收方收到一个失序的数据,可以立刻向发送方发送重复确认信息
    快恢复 与快重传配合使用,当发送方接收到连续三个重复确认请求,为了避免网络拥塞,执行拥塞避免算法。
  11. (24)软连接:软链接有自己的文件属性及权限等;
    可对不存在的文件或目录创建软链接;
    软链接可交叉文件系统;
    软链接可对文件或目录创建;
    创建软链接时,链接计数 i_nlink 不会增加;
    删除软链接并不影响被指向的文件,但若被指向的原文件被删除,则相关软连接被称为死链接(即 dangling link,若被指向路径文件被重新创建,死链接可恢复为正常的软链接)。
  12. .ext3文件系统的优点:高可用性,数据的完整性,数据转换以及多种日志模式。
  13. (36)设计模式的考察。
  14. (38)静态初始代码块>初始代码块>构造函数,且静态初始化代码块只在调用类的时候才调用一次,初始代码块和构造函数会调用多次。
  15. (41)Java的类加载器:
    总结:
    1、如果一个 static final 变量是"编译期常量",就像 public static final String a = “JD”;那样,那么这个值不需要对 Test2 类进行初始化就可以读取。
    2、但是,如果只是将一个变量的域设置为 static 和 final 的,那不足以确保这种行为。例如,对 public static final String a = new String(“JD”);的访问将强制对 Test2 类进行初始化,因为它不是一个"编译期常量"。
    3、如果一个 static 变量域不是 final,那么在对它进行访问时,总是要求在它被读取之前,要先进行链接 (为这个域分配存储空间) 和初始化 (初始化该存储空间) 就像 public static String a = “JD”;。

https://www.cnblogs.com/hglibin/p/10298650.html

  1. (46)用ClassLoader加载类,是不会导致类的初始化(也就是说不会执行方法).Class.forName(…)加载类,不但会将类加载,还会执行会执行类的初始化方法.

猜你喜欢

转载自blog.csdn.net/qq_35383654/article/details/88374973
今日推荐