编程语言
首页 > 编程语言> > 互联网Java工程师面试题——每天背诵二十道面试题(四)

互联网Java工程师面试题——每天背诵二十道面试题(四)

作者:互联网

文章目录


前言

第四天。


提示:以下是本篇文章正文内容,下面案例可供参考

一、编程和代码相关的面试题

1、Java 中如何将字符串转换为整数?

答:

String s = "123";
int i ;
第一种方法: i = integer.parseInt(s);
第二种方法:i=Integer.valueOf(s).intValue();

2、接口是什么?你知道为什么要使用接口而不是直接使用具体类吗?

答:

  1. 接口用于定义API 。它定义了类必须得遵循的规则。同时,它提供了一种抽象,因为客户端只使用接口,这样可以有多重实现。
  2. 如List接口,你可以使用可随机访问的ArrayList,也可以使用方便插入和删除的LinkedList。接口中不允许写代码,以此来保证抽象,但是Java8中可以在接口声明静态的默认方法,这种方法是具体的。

3、Java 中,你知道抽象类与接口之间有什么不同吗?

答:Java中,抽象类和接口有很多不同之处,但是最重要的是一个是Java中限制一个类只能继承一个类,但是可以实现多个接口。

抽象类可以很好的定义一个家族内的默认行为,而接口能更好的定义类型,有助于后面实现多态机制。

4、你能写出一个正则表达式来判断一个字符串是否是一个数字吗?

答:一个数字字符串,只能包含数字,如 0 到 9 以及 +、- 开头,通过这个信息,你可以下一个如下的正则表达式来判断给定的字符串是不是数字。

import java.util.regex.Pattern 和 java.util.regex.Matcher
public boolean isNumeric(String str){
Pattern pattern = Pattern.compile("[0-9]*");
Matcher isNum = pattern.matcher(str);
if( !isNum.matches() ){
		return false;
	}
	return true;
}

5、你给我说出 5 个 JDK 1.8 引入的新特性吧?

答:

  1. Lambda 表达式,允许像对象一样传递匿名函数。
  2. Stream API,充分利用现代多核 CPU,可以写出很简洁的代码。
  3. Date 与 Time API,最终,有一个稳定、简单的日期和时间库可供你使用。
  4. 扩展方法,现在,接口中可以有静态、默认方法。
  5. 重复注解,现在你可以将相同的注解在同一类型上使用多次。

二、Sping面试题

1.你给我说一下什么是 Spring 配置文件?

答:Spring 配置文件是 XML 文件。该文件主要包含类信息。它描述了这些类是如何配置以及相互引入的。但是,XML 配置文件冗长且更加干净。如果没有正确规划和编写,那么在大项目中管理变得非常困难。

2、Spring DAO 有什么用?

答:SpirngDAO使得JDBC,Hibernate或JDO这样的数据访问技术更容易以一种统一的方式工作。这使得用户容易在持久性技术之间切换。

它还允许您在编写代码时,无需考虑捕获每种技术不同的异常。

3、你知道Spring MVC 框架有什么用吗?

答:Spring Web MVC提供框架 模型-视图-控制器 架构和随时可用的组件,用于开发灵活且松散的耦合的Web应用程序。

MVC模式有助于分离应用程序的不用方面,如输入逻辑,业务逻辑和UI逻辑,同时在所有这些元素之间提供松散的耦合。

4、什么是 Spring 的依赖注入你简单的说一下吧?

答:依赖注入,是IOC的一个方面,是个通常的概念,它有多种解释,这概念是说你不用创建对象,而只需要描述它如何被创建,你不在代码里面直接组装你的组件和服务。

但是亚奥在配置文件里面描述那些组件需要那些服务,之后一个容器(IOC容器),负责把他们组装起来。

5、你知道Spring 框架中的单例 bean 是线程安全的吗?

答:不,Spring 框架中的单例 bean 不是线程安全的。

三、微服务面试题

1、什么是耦合你知道吗?

答:组件之间依赖关系强度的度量被认为是耦合。一个好的设计总是被认为具有高内聚力和低耦合性。

2、什么是 REST / RESTful 以及它的用途是什么?

答:

  1. Representational State Transfer(REST)/ RESTful Web 服务是一种帮助计算机系统通过 Internet 进行通信的架构风格。这使得微服务更容易理解和实现。

  2. 微服务可以使用或不使用 RESTful API 实现,但使用 RESTful API 构建松散耦合的微服务总是更容易。

3、你知道什么是客户证书?

答:

4、你知道什么是有界上下文吗?

答:

5、Docker 的目的是什么?

答:

6、你知道什么是 spring 装配吗?

答:

  1. 当 bean 在 Spring 容器中组合在一起时,它被称为装配或 bean 装配。
  2. Spring容器需要知道需要什么 bean 以及容器应该如何使用依赖注入来将 bean 绑定在一起,同时装配 bean。

7、你知道Spring 支持哪些 ORM 框架吗?

答:

8、如何理解 Spring 中的代理?

答:将 Advice 应用于目标对象后创建的对象称为代理。在客户端对象的情况下,目标对象和代理对象是相同的。

Advice + Target Object = Proxy

9、Spring 应用程序有哪些不同组件?

答:

  1. 接口 -定义功能
  2. Bean类 它包含属性,setter 和getter 方法,函数等。
  3. Spring面向切面编程(AOP) - 提供面向切面的功能。
  4. Bean配置文件 - 它包含的信息以及如何配置他们。
  5. 用户程序-它使用接口。

10、你知道使用 Spring 有哪些方式吗?

答:

总结

如果本文对你有帮助,请给我点个赞再走吧。

标签:面试题,Java,Spring,什么,接口,bean,背诵
来源: https://blog.csdn.net/qq_43055855/article/details/111413755