顺丰科技2019秋招Java开发与测试工程师客观题精选

需积分: 26 4 下载量 122 浏览量 更新于2024-09-08 1 收藏 34KB DOCX 举报
本资源是一份针对顺丰科技2019年秋季招聘测试工程师和Java开发工程师的客观题合集文档。这份文档主要考察了应聘者的Web前端性能理解、Spring MVC框架的知识、JUnit单元测试的实践、递归算法的理解以及Java中静态方法的概念。以下是各部分知识点的详细解析: 1. **Web前端性能影响因素**: - 影响网页性能的因素不包括C.磁盘空间不够。服务器数据返回延迟(A)和网络传输速率(B)直接影响页面响应速度,而页面渲染(D)也对用户体验有直接影响,它们都是常见的性能瓶颈。 2. **Spring MVC基础知识**: - D选项错误,`@Controller`默认是单例模式,若想改为多例,需使用`@Scope("prototype")`,但成员变量不会共享,每个实例独立。 3. **JUnit单元测试**: - A和D正确,`@Test`注解的方法必须是public void类型,无参数,并非所有测试方法都需要`@BeforeClass`,且它不是必须为static void。 - B选项错误,`AssertEquals`和`AssertNotEquals`用于比较对象值,而非判断对象是否相同;C错误,`System.exit`并非JUnit底层实现的一部分,用于结束当前进程。 4. **递归算法与计算**: - 给定的递归算法中,当`b`为偶数时,函数会将`a`加到自身结果上,并将`b`除以2继续递归。初始调用`foo(1, 3)`,`b`不为0,执行`foo(a+a, b/2)`,即`foo(2, 3/2)`。由于`b`再次不为0,会进行下一轮递归,直到`b`变为0,终止递归。因此,最终结果为3(`foo(1, 1)`),所以正确答案是A。 5. **Java静态方法**: - A、B和C正确,静态方法属于类,不属于任何实例,只能访问静态数据,不能直接访问实例变量,也不能直接调用非静态方法。 6. **函数调用参数传递**: - 虽然这部分内容没有给出具体题目,但通常函数调用中,入参是传递给函数的数据,返回地址(可能是指向返回值的内存地址)在函数内部隐式处理,调用者并不直接提供或获取。 总结:这份文档涵盖了前端性能优化、Spring MVC设计模式、单元测试的最佳实践、递归算法的实现以及Java静态方法的特性和使用。熟悉并掌握这些知识点对于应聘顺丰科技的测试工程师或Java开发工程师职位至关重要。