返回顶部
首页 > 资讯 > 精选 >Java类加载器包括几种以及它们之间的关系是怎样的
  • 330
分享到

Java类加载器包括几种以及它们之间的关系是怎样的

2023-06-02 19:06:07 330人浏览 安东尼
摘要

这篇文章主要讲解了“ Java类加载器包括几种以及它们之间的关系是怎样的”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“ Java类加载器包括几种以及它们之间的关系是怎样的”吧! 为什么说Ja

这篇文章主要讲解了“ Java类加载器包括几种以及它们之间的关系是怎样的”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“ Java类加载器包括几种以及它们之间的关系是怎样的”吧!

为什么说Java是一门平台无关语言?

平台无关实际的含义是“一次编写到处运行”。Java 能够做到是因为它的字节码(byte code)可以运行在任何操作系统上,与底层系统无关。

为什么 Java 不是100%面向对象

Java 不是100%面向对象,因为它包含8个原始数据类型,例如 boolean、byte、char、int、float、double、long、short。它们不是对象。

什么是 singleton class,如何创建一个 singleton class?

Singleton class 在任何时间同一个 JVM 中只有一个实例。可以把构造函数加 private 修饰符创建 singleton。

什么是多态?

多态简单地说“一个接口,多种实现”。多态的出现使得在不同的场合同一个接口能够提供不同功能,具体地说可以让变量、函数或者对象能够提供多种功能。下面是多态的两种类型:

  1. 编译时多态

  2. 运行时多态

编译时多态主要是对方法进行重载(overload),而运行时多态主要通过使用继承或者实现接口。

什么是运行时多态,也称动态方法分配?

在 Java 中,运行时多态或动态方法分配是一种在运行过程中的方法重载。在这个过程中,通过调用父类的变量引用被重载的方法。下面是一个例子:

Java类加载器包括几种以及它们之间的关系是怎样的

Java类加载器包括几种?它们之间的关系是怎么样的?

Java 类加载器有:

  • 引导类加载器(bootstrap class loader):只加载 JVM 自身需要的类,包名为 java、javax、sun 等开头。

  • 扩展类加载器(extensions class loader):加载 JAVA_HOME/lib/ext 目录下或者由系统变量 -Djava.ext.dir 指定位路径中的类库。

  • 应用程序类加载器(application class loader):加载系统类路径 java -classpath 或 -Djava.class.path 下的类库。

  • 自定义类加载器(java.lang.classloder):继承 java.lang.ClassLoader 的自定义类加载器。

注意:-Djava.ext.dirs 会覆盖 Java 本身的 ext 设置,造成 jdk 内建功能无法使用。可以像下面这样指定参数:

Java类加载器包括几种以及它们之间的关系是怎样的

它们的关系如下:

  • 启动类加载器,c++实现,没有父类。

  • 扩展类加载器(ExtClassLoader),Java 实现,父类加载器为 null。

  • 应用程序类加载器(AppClassLoader),Java 实现,父类加载器为 ExtClassLoader 。

  • 自定义类加载器,父类加载器为AppClassLoader。

  • Java学习交流圈:834962734 ,进群可免费获取一份Java架构进阶技术精品视频。(高并发+Spring源码+JVM原理解析+分布式架构+微服务架构+多线程并发原理+BATJ面试宝典)

什么是JDBC驱动?

JDBC Driver 是一种实现 Java 应用与数据库交互的软件。JDBC 驱动有下面4种:

  1. JDBC-ODBC bridge 驱动

  2. Native-api 驱动(部分是 Java 驱动)

  3. 网络协议驱动(全部是 Java 驱动)

  4. Thin driver(全部是 Java 驱动)

使用 Java 连接数据库有哪几步?

  • 注册驱动类

  • 新建数据库连接

  • 新建语句(statement)

  • 查询

  • 关闭连接

列举spring配置中常用的重要注解。

下面是一些重要的注解:

  • @Required

  • @Autowired

  • @Qualifier

  • @Resource

  • @PostConstruct

  • @PreDestroy

Spring中的Bean是什么?列举Spring Bean的不同作用域。

Bean 是 Spring 应用的骨架。它们由 Spring ioc 容器管理。换句话说,Bean 是一个由 Spring IoC 容器初始化、装配和管理的对象。

下面是 Spring Bean 的5种作用域:

  • Singleton:每个容器只创建一个实例,也是 Spring Bean 的默认配置。由于非线程安全,因此确保使用时不要在 Bean 中共享实例变量,一面出现数据不一致。

  • Prototype:每次请求时创建一个新实例。

  • Request:与 prototype 相同,区别在于只针对 WEB 应用。每次 Http 请求时创建一个新实例。

  • Session:每次收到 HTTP 会话请求时由容器创建一个新实例。

  • 全局 Session:为每个门户应用(Portlet App)创建一个全局 Session Bean。

感谢各位的阅读,以上就是“ Java类加载器包括几种以及它们之间的关系是怎样的”的内容了,经过本文的学习后,相信大家对 Java类加载器包括几种以及它们之间的关系是怎样的这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是编程网,小编将为大家推送更多相关知识点的文章,欢迎关注!

--结束END--

本文标题: Java类加载器包括几种以及它们之间的关系是怎样的

本文链接: https://lsjlt.com/news/231091.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • Java类加载器包括几种以及它们之间的关系是怎样的
    这篇文章主要讲解了“ Java类加载器包括几种以及它们之间的关系是怎样的”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“ Java类加载器包括几种以及它们之间的关系是怎样的”吧! 为什么说Ja...
    99+
    2023-06-02
  • Java三个类加载器及它们的相互关系
    目录一、什么是类加载器?二、AppClassLoader系统类加载器三、ExtClassLoader扩展类加载器四、BootstrapClassLoader启动类加载器五、加...
    99+
    2024-04-02
  • Java自定义类加载器及JVM自带的类加载器之间的交互关系是什么
    这篇“Java自定义类加载器及JVM自带的类加载器之间的交互关系是什么”文章,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要参考一下,对于“Java自定义类加载器及JVM自带的类加载器之间的交互关系是什么”,小编整理...
    99+
    2023-06-06
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作