开发者社区> 问答> 正文

【精品问答】Java必备核心知识1000+(附源码)

为了方便Java开发者快速找到相关技术问题和答案,开发者社区策划了Java技术1000问内容,包含最基础的如何学Java、实践中遇到的技术问题、RocketMQ面试、Java容器部署实践等维度内容。

我们会以每天至少50条的速度,增加优秀的Java问答内容。

为了方便开发者线上交流,社区组建了Java钉钉群,有数千人在里边讨论技术问题,点击这里加入群组织吧。https://developer.aliyun.com/article/713951

【精品问答】Java技术1000问(1) 友情提示:1000问的内容含量比较大,收藏该页面不迷失哦

51、Dubbo有哪几种配置方式?

52、Dubbo 核心的配置有哪些?

53、在 Provider 上可以配置的 Consumer 端的属性有哪些?

54、Dubbo启动时如果依赖的服务不可用会怎样?

55、Dubbo推荐使用什么序列化框架,你知道的还有哪些?

56、Dubbo默认使用的是什么通信框架,还有别的选择吗?

57、Dubbo有哪几种集群容错方案,默认是哪种?

58、Dubbo有哪几种负载均衡策略,默认是哪种?

59、注册了多个同一样的服务,如果测试指定的某一个服务呢?

60、Dubbo支持服务多协议吗?

61、当一个服务接口有多种实现时怎么做?

62、服务上线怎么兼容旧版本?

63、Dubbo可以对结果进行缓存吗?

64、Dubbo服务之间的调用是阻塞的吗?

65、Dubbo支持分布式事务吗?

66、服务提供者能实现失效踢出是什么原理?

67、服务读写推荐的容错策略是怎样的?

68、Dubbo的管理控制台能做什么?

69、Dubbo 停止维护了吗?

70、Dubbo 和 Dubbox 有什么区别?

71、你还了解别的分布式框架吗?

72、在使用过程中都遇到了些什么问题?

73、你觉得用 Dubbo 好还是 Spring Cloud 好?

74、在 Provider 上可以配置的 Consumer 端的属性有哪些

75、Dubbo启动时如果依赖的服务不可用会怎样?

76、Dubbo推荐使用什么序列化框架,你知道的还有哪些?

77、Dubbo默认使用的是什么通信框架,还有别的选择吗?

78、Dubbo有哪几种集群容错方案,默认是哪种?

79、在使用过程中都遇到了些什么问题?

80、Dubbo支持服务降级吗?

81、如何解决服务调用链过长的问题?

82、Dubbo必须依赖的包有哪些?

83、说说 Dubbo 服务暴露的过程

84、Dubbo 能集成 Spring Boot 吗?

85、Dubbo如何优雅停机?

86、Dubbo需要 Web 容器吗?

87、Dubbo内置了哪几种服务容器?

88、Dubbo 配置文件是如何加载到Spring中的?

89、Dubbo SPI 和 Java SPI 区别?

90、Dubbo telnet 命令能做什么?

关于Java经典问答之SpringBoot 100问

1、Spring 和 SpringBoot 有什么不同?

2、怎么使用 Maven 来构建一个 SpringBoot 程序?

3、SpringBoot starter 作用在什么地方?

4、怎么禁用某些自动配置特性?

5、怎么注册一个定制的自动化配置?

6、当 bean 存在的时候怎么置后执行自动配置?

7、怎么将 SpringBoot web 应用程序部署为 JAR 或 WAR 文件?

8、怎么使用 SpringBoot 去执行命令行程序?

9、有什么外部配置的可能来源

10、SpringBoot 支持松绑定代表什么?

11、SpringBoot DevTools 的用途是什么?

12、怎么编写一个集成测试?

13、SpringBoot的 Actuator 是做什么的?

14、什么是自动配置?

15、什么是 Spring Boot Stater ?

16、举一个例子来解释更多 Staters 的内容?

17、Spring Boot 还提供了其它的哪些 Starter Project Options?

18、Spring 是如何快速创建产品就绪应用程序的?

19、创建一个 Spring Boot Project 的最简单的方法是什么?

20、Spring Initializr 是创建 Spring Boot Projects 的唯一方法吗?

21、为什么我们需要 spring-boot-maven-plugin?

22、如何使用 SpringBoot 自动重装我的应用程序?

23、什么是嵌入式服务器?我们为什么要使用嵌入式服务器呢?

24、如何在 Spring Boot 中添加通用的 JS 代码?

25、什么是 Spring Data?

26、什么是 Spring Data REST?

27、path=”users”, collectionResourceRel=”users” 如何与 Spring Data Rest 一起使用?

28、当 Spring Boot 应用程序作为 Java 应用程序运行时,后台会发生什么?

29、我们能否在 spring-boot-starter-web 中用 jetty 代替 tomcat?

30、如何使用 Spring Boot 生成一个 WAR 文件?

31、如何使用 Spring Boot 部署到不同的服务器?

32、RequestMapping 和 GetMapping 的不同之处在哪里?

33、为什么不建议在实际的应用程序中使用 Spring Data Rest?

34、在 Spring Initializer 中,如何改变一个项目的包名字?

35、可以配置 application.propertierde 的完整的属性列表在哪里可以找到?

36、JPA 和 Hibernate 有哪些区别?

37、业务边界应该从哪一层开始?

38、使用 Spring Boot 启动连接到内存数据库 H2 的 JPA 应用程序需要哪些依赖项?

39、如何不通过任何配置来选择 Hibernate 作为 JPA 的默认实现?

40、指定的数据库连接信息在哪里?它是如何知道自动连接至 H2 的?

41、如何连接一个像 MySQL 或者Orcale 一样的外部数据库?

42、Spring Boot 配置的默认 H2 数据库的名字是上面?为什么默认的数据库名字是 testdb?

43、你能否举一个以 ReadOnly 为事务管理的例子?

44、发布 Spring Boot 用户应用程序自定义配置的最好方法是什么?

45、如何使用配置文件通过 Spring Boot 配置特定环境的配置?

46、Spring Boot 的核心注解是哪个?

47、开启 Spring Boot 特性有哪几种方式?

48、Spring Boot 需要独立的容器运行吗?

49、Spring Boot 的核心配置文件有哪几个?它们的区别是什么?

50、Spring Boot 的配置文件有哪几种格式?它们有什么区别?

51、运行 Spring Boot 有哪几种方式?

52、Spring Boot 自动配置原理是什么?

53、Spring Boot 的目录结构是怎样的?

54、如何在 Spring Boot 启动的时候运行一些特定的代码?

55、Value注解读取方式

56、ConfigurationProperties注解读取方式

57、PropertySource+@Value注解读取方式

58、PropertySource+@ConfigurationProperties注解读取方式

59、Environment读取方式

60、Spring Boot 支持哪些日志框架?推荐和默认的日志框架是哪个?

61、Spring Boot属性配置

62、SpringBoot 实现热部署有哪几种方式?

63、引用devtools依赖

64、自定义配置热部署

65、Intellij Idea修改

66、devtools自动配置

67、你如何理解 Spring Boot 配置加载顺序?

68、 Spring Boot 配置属性加载的顺序

69、在主应用程序中添加 Java 系统参数

70、如何验证配置参数的加载顺序

71、Spring Boot 如何定义多套不同环境配置?

72、基于properties文件类型定义环境配置

73、基于yml文件类型定义环境配置

74、基于Java代码定义环境配置

75、指定Profile定义环境配置

76、Spring Boot 可以兼容老 Spring 项目吗,如何做?

77、保护 Spring Boot 应用有哪些方法?

78、JavaBean是什么时候创建的?

79、Spring Boot项目启动时所要执行的代码,阅读如何操作

80、refreshContext断点如何执行

81、spring bean作用域有哪些

82、为什么spring要默认是单例呢?

83、什么是JavaConfig?

84、[如何重新加载Spring Boot上的更改,而无需重新启动服务器?](https://developer.aliyun.com/ask/258497

85、Spring Boot中的监视器是什么?

86、如何在Spring Boot中禁用Actuator端点安全性?

87、什么是YAML?

88、如何使用Spring Boot实现分页和排序?

89、如何将Spring Boot应用程序作为war包部署?

90、如何禁用执行器端点安全在Spring启动?

91、如何将Spring引导应用程序部署到Docker?

92、如何将Spring引导应用程序运行到自定义端口?

93、什么是ELK堆栈?如何与Spring Boot一起使用?

94、如何为Spring引导应用程序实现安全性?

95、什么是Spring Boot Batch?

96、什么是FreeMarker模板?如何使用Spring Boot实现它?

97、如何使用Spring Boot实现异常处理?

98、在Spring引导中使用过缓存框架吗?

99、如何使用Spring Boot公开了SOAP web服务端点?

100、如何用Spring Boot实现拦截器?

Java作为市场最大的语言,一直受开发者关注,很多开发者也是将其应用于各个领域。那么,对于Java基础知识你还掌握多少呢?下面来检测下吧!

1、Java源程序文件的后缀是?Java字节码文件的后缀名称是?

2、Java程序实现可移值性,依靠的是?

3、Java语言的三个分支是?

4、Java程序由____组成,如果Java使用____声明类,则文件名称必须与类名称一致

5、Java执行是从____方法开始执行的,此方法的完整定义是____。

6、从命名标准上来讲,Java类名的每个单词的首字母通常要求____。

7、当使用java命令解释一个程序时,一定需要____环境属性来定位类资源路径

8、Java中的标识符组成原则

9、____关键字是在JDK1.4时加入的,____关键字是在JDK1.5时加入的

10、列举出已经知道的5个关键字

11、Java注释分为以下三种

12、Java中使用____关键字,可以定义一个整型数据

13、"在一个Java源文件中定义了3个类和15个方法,编译该Java源文件时会产生____个字节码文件,其扩展名是 ____。"

14、布尔型数据类型的关键字是____,有____和____两种取值

15、整型数可以采用哪四种类型表示

16、根据占用内存长度的不同将浮点型分为____和____两种

17、Java程序结构分为哪三种

18、逻辑表达式:true&&false&&true的结果是____

19、逻辑表达式:!true||false的结果是____

20、在方法中可以使用____语句来结束方法的执行

21、方法中的____关键字用来表示方法不返回任何值

22、下面那个是属于解释Java程序所使用到命令?

23、下面的那个环境变量java解释时所需要的

24、下面那一种开发方向不属于Java定义的?

25、下面那些标识符是正确的

26、下面那些关键字是Java中未使用到的关键字

27、publicstaticvoidmain方法的参数描述是

28、下面说法正确的是

29、下面说法不正确的是

30、下面____不是Java的关键字

31、在Java中,字节数据类型的关键字和默认值是

32、3.15E2表示的数据是

33、程序System.out.println("1+1="+1+1);的输出结果是

34、程序System.out.println(10/3);的输出结果是

35、执行下面的语句后,a、b、c的值分别是

36、以下的____能正确表示Java语言中的一个整型常量。

37、下面的数据类型____是float型

38、下列关于自动类型转换的说法中,正确的一个是

39、一个方法在定义过程中又调用自身,这种方法称为

40、简述Java实现可移值性的基本原理

41、简述Java语言的三个程序分支

42、简述Java中path及classpath的作用

43、解释方法重载的概念,并举例说明。

44、简述Java语言的主要特点

45、详细阐述Java中使用publicclass或class声明一个类的区别及注意事项

46、在屏幕上输出:“我喜欢学习Java”的信息。

47、在屏幕上打印出以下的图形:

48、"打印出100~1000范围内的所有“水仙花数”,所谓“水仙花数”是指一个三位数,其各位数字立方和等于该数本身。 例如:153是一个“水仙花数”,因为153=1的三次方+5的三次方+3的三次方。"

49、通过代码完成两个整数内容的交换。

50、判断某数能否被3,5,7同时整除

51、编写程序,分别利用while循环、do…while循环和for循环求出100~200的累加和

Java高阶技术进阶

1、学习Java技术体系,设计模式,流行的框架与组件有哪些?

2、Java工程化与工具有哪些?

3、分布式架构有哪些?

4、微服务架构

5、如何进行性能优化?

6、Spring综合讲解

7、持久层框架mybatis篇与mybatis-plus使用

8、持久层框架mybatis篇与mybatis-plus使用

9、spring boot篇与lombok介绍(两节课)

10、redis与ehcache缓存对比与使用

11、接口文档swagger2与接口调试工具postman

12、开源框架-快速开发平台renren-fast解读

13、spring data jpa的运用

14、开源项目-多人博客项目mblog解读

15、权限框架shiro介绍与使用

16、持续集成工具jenkins的安装与运用

17、tomcat的整体架构介绍与session共享方案

18、websocket协议介绍,学会即时通讯

19、百万级网络通讯框架t-io介绍与项目实战

20、开源项目-秒杀、抢购解决方案miaoshao解读

21、Elasticsearch - 搜索引擎入门

22、微服务套装spring cloud篇

23、消息队列RabbitMq的使用

24、认识nosql数据库MongoDB

Java基础问答

1、必备Java基础测试题

2、Java基础测试题答案

3、面向对象有那三大特征

4、类由什么组成

5、"什么运算符的作用是根据对象的类型分配内存空间。当对象拥有内存空间时,会自动调用类中的构造方法 为对象实例化。"

6、使用____修饰的类成员称为私有成员。私有成员只能在____中使用

7、构造方法的名称与____相同

8、____关键字可以让类中的属性和方法对外部不可见

9、this关键字可以调用本类中的____、,调用构造方法时必须放在构造方法的首行。

10、在Java中数组排序的方法是什么

11、编写并测试一个代表地址的Address类,地址信息由:国家,省份,城市,街道,邮编组成,并可以返回完整的地址信息。

12、"定义并测试一个代表员工的Employee类。员工属性包括“编号”、“姓名”、“基本薪水”、“薪水增长额”;还包括“计 算增长后的工资总额”。的操作方法。"

13、编写程序在将字符串“wantyoutoknowonething”,统计出字母“n”和字母“o”的出现次数。

14、"设计一个Dog类,有名字、颜色、年龄等属性,定义构造方法来初始化类的这些属性,定义方法输出Dog信息。编 写应用程序使用Dog类。"

15、"字符串操作: ·从字符串“MLDN中心Java技术学习班20130214”中提取开班日期。"

16、"编写一个银行帐户类,类的构成包括: ·数据成员: |-用户的帐户名称、用户的帐户余额; ·方法包括: |-开户(设置帐户名称,及余额),利用构造方法完成 ·查询余额"

17、Java中通过____关键字实现继承

18、一个类只能继承____个父类,但能实现____个接口

19、"类是所有类的父类,该类中判断两个对象是否相等的方法是,取 得对象完整信息的方法是____。"

20、"Integer类是对____基本数据类型的封装。Float类是对____基本数据类型的封装。Double类是对____ 基本数据类型的封装。字符类Character是对____基本数据类型的封装。"

21、"当子类中定义的方法与父类方法同名且参数类型及个数、返回值类型相同时,称子类方法____父类方法,子 类默认使用____方法,使用父类的同名方法,必须使用____关键字说明。"

22、"当子类定义的成员变量与父类的成员变量同名时,称子类____父类的成员变量,子类默认使用____属性。 使用父类的同名成员变量,必须用____关键字说明。"

23、如果子类定义了构造方法,在创建子类对象时首先默认调用____,然后再本类的构造方法

24、哪个关键字可以定义一个包,哪个关键字可以导入包

25、Java中存在四种访问权限

26、Java中可以使用____导入一个类的全部静态方法

27、____命令可以将全部的____打成一个压缩包

28、Java中____包是自动导入的

29、"在使用泛型类时,没有指定泛型的类型,则编译会出现不安全的警告信息,程序在使用时会使用____类 型进行接收。"

30、通过____类指定泛型的上限,通过____类指定泛型的下限。

31、使用____通配符可以接收全部的泛型类型实例,但却不可修改泛型属性内容。

32、Java中通过____关键字定义一个枚举,使用此关键字实际上就相当于一个类继承____。

33、枚举中通过____方法取得枚举的全部内容。

34、Java提供的三个内建的Annotation是

35、从JDK1.8之中,接口内可以定义有三类方法

36、在Java中一共提供有四个函数式接口,分别为

37、Java多线程可以依靠哪三种方式实现。

38、多个线程操作同一资源的时候需要注意____,依靠____关键字实现,实现手段是:块和,过多的使用,则会出现____问题。

39、Java程序运行时,至少启动两个个线程,分别是:____。

40、main线程的优先级是

41、线程在生命周期中要经历五种状态,分别是

42、Object类提供的哪三个方法可以控制线程

43、"在java.lang包中提供了两个字符串类,分别是____和____。这两个类都是____接 口的子类,字符串类提供的求字符串长度的方法是____。"

44、Java中提供的两个大数操作类是

45、对象克隆方法是____提供的,方法名称是____,对象所在的类必须实现____。

46、String类的哪四个方法可以使用正则。

47、通过Object类中的什么方法可以取得一个类的Class对象

48、Constructor类定义在____包中

49、Class类对象的三种实例化方式

50、IO操作的所有类都保存在____包中

51、文件输入流是____、文件输出流____

52、IO操作中字节流的操作类是____,字符流的操作类是____和____。

53、System类中提供那个三个常量是对IO有所支持的

54、"序列化对象使用____类,对象所在的类必须实现____接口, 才可以自动序列化所有的内容"

55、什么关键字可以让类中的属性不被序列化下来

56、要想执行数据库更新的操作接口是:

57、数据库查询结果使用____接口保存

58、JDBC中通过____类加载数据库驱动程序

59、String类的操作特点

60、简述垃圾对象的产生

61、类与对象的关系是什么?如何创建及使用对象?

62、举例说明子类对象的实例化过程。

63、简述this与super关键字的区别。

64、简述方法的重载与覆写的区别。

65、在已有类的基础上派生新的类有什么好处?

66、如何区分子类和父类?子类可以继承父类的那些内容?

67、什么是多态?实现都态的方法有那些?

68、接口有那些特征?如何定义和实现接口。

69、接口和抽象类有那些区别?

70、简述基本数据类型的自动装箱及自动拆箱操作

71、简述包的作用及使用

72、简述Java的四种访问权限的区别

73、简述RuntimeException和Exception的区别

74、try、catch、finally三种语句的功能是什么?

75、简述Java中的异常处理机制。

76、简述Error和Exception的区别。

77、列举三个常见的RuntimeException子类。

78、简述泛型的作用

79、简述枚举的作用及实现特点。

80、简述JAVASE中三个内建的Annotation的作用。

81、简述线程两种实现方式及区别?

82、简述死锁的产生。

83、String类和StringBuffer类的区别是什么?StringBuffer类提供了那些独特的方法?

84、简述final、finally、finalize的区别及作用?

85、解释Comparable和Comparator的区别

86、简述字节流与字符流操作的区别。

87、简述对象序列化的主要作用。

88、简述ArrayList和Vector的区别。

89、简述HashMap及Hashtable的区别

90、Set集合中的内容是不允许重复的,Java依靠什么来判断重复对象?

91、TreeSet类是允许排序的,Java依靠什么进行对象的排序操作?

92、简述Collection和Collections的区别

93、happens-before原则

94、Java是如何实现跨平台的?

95、Java线程间的通信方式

96、Java 线程有哪些状态,这些状态之间是如何转化的?

97、List接口、Set接口和Map接口的区别

98、Session机制

99、Cookie和Session的区别

100、Java中的equals和hashCode方法详解

101、hashcode() 方法详解

102、comparable与comparator的区别

欢迎加入开发者技术社群

群福利:群内每周进行群直播技术分享及问答 test

展开
收起
问问小秘 2019-11-19 14:25:39 9472 0
2 条回答
写回答
取消 提交回答
问答排行榜
最热
最新

相关电子书

更多
Spring Cloud Alibaba - 重新定义 Java Cloud-Native 立即下载
The Reactive Cloud Native Arch 立即下载
JAVA开发手册1.5.0 立即下载