面试时有用
1、JVM简单描述
(1)当运行一个java程序时,就是运行了一个java虚拟机实例;当程序关闭退出,java虚拟机实例也就消亡。
(2)内部两种线程:守护线程(执行垃圾收集任务的线程)、非守护线程。
(3)JVM由四部分组成:class loader、Execution engine、runtime data area、Native interface
(4)Runtime data area 即所谓的JVM内存,包括堆栈(堆--用new建立,垃圾自动回收负责回收;栈--存放基本数据类型,速
度快)
2、JVM的gc
(1)垃圾收集的目的在于清除不再使用的对象。
(2)手工调用垃圾回收System.gc();
3、jdk1.5较1.4新特性
(1)泛型
泛型的本质是参数化类型,Java语言引入泛型的好处是安全简单。
public interface List<E> extends Collection<E>
(2)简化了集合的遍历
for(User user :list){}
(3)装包/拆包
(4)枚举(Enums):使用它为我们规避了很多问题,编码更灵活性。
(5)可变参数(Varargs) 举例:JdbcTemplate.update() 中传入的参数
public int update(String sql, Object ... args)
4、HashMap与HashTabel区别
(1)HashTable的方法是同步的(线程安全的)java.util.Properties继承Hashtable,HashMap未经同步。
(2)Hashtable不允许null键值,HashMap允许null键值。
(3)Hashtable继承自Dictionary类,而HashMap是Java1.2引进的Map interface的一个实现
5、Oracle与mysql区别,从结构和用户角度阐述
(1)mysql是开源的关系式数据库
(2)ORACLE项目来说一个项目就应该有一个用户和其对应的表空间,而MYSQL项目中也应该有个用户和一个库。MYSQL并没有
使用表空间来进行管理。
6、JDBC连接数据库步骤
(1)加载驱动程序
Class.forName("com.microsoft.sqlserver.jdbc.SQLserverDriver");
(2)建立连接(通过驱动管理器)
Connection con = DriverManager.getConnection(URL, userName,userPwd);
(3)建立Statement (通过Connection对象进行创建),,
Statement st = con.createStatement();
//建立 Statement 之后,就可以使用Statement的对象 st 来执行sql语句了。。
例如: st.executeUpdate("sql语句")。。。。详情请查阅API
(4)关闭连接
con.close()。
7、jdbc statement种类及之间的区别,哪一个是处理批量数据的
(1)statement、PreparedStatement(是预编译的)、CallableStatement(调用存储过程)
(2)PreparedStatement比statement更有可读性、效率更高,安全性高。
(3)PreparedStatement用于批量处理数据。
8、抽象类与接口区别
(1)抽象类可以用来继承。接口只能用来实现。
(2)抽象类里面可以有实现方法,而接口只能有定义的方法,方法的实现要在实现接口的类里面重新实现。
(3)抽象类的的方法在子类中可以不实现,也可以重写父类的方法。 而接口中的所有方法一定要实现。
分享到:
相关推荐
标题中的"bcprov-ext-jdk15on-1.54.jar"和"bcprov-jdk15on-1.54.jar"是Bouncy Castle提供的Java加密库,用于增强Java平台的安全性。Bouncy Castle是一个开源项目,提供强大的加密算法实现,包括SSL/TLS协议支持,...
**Java Development ...这个版本的JDK不仅提供了新的语法和功能,还优化了性能,提升了开发效率。对于初学者和经验丰富的开发者来说,理解和掌握这些特性都是必要的,因为它们至今仍在现代Java开发中发挥着重要作用。
**JDK 1.5.0.06 32位详解** JDK(Java Development Kit)是Oracle公司提供的用于开发Java应用程序的软件开发工具包,它是Java编程环境的基础。JDK 1.5.0.06是JDK的一个特定版本,发布于2005年,属于Java SE(标准版...
总结,JDK 1.5的64位Windows版本为Java开发者提供了在64位系统上开发和运行Java应用程序的强大支持。通过理解其新特性和配置要求,开发者可以充分利用这个工具集,进行高效、高质量的软件开发。
在探讨如何在操作系统中同时安装了JDK1.4和JDK1.5的情况下更改环境变量等设置之前,我们先来了解一下JDK的基本概念及其版本更迭的重要性。 ### JDK简介 JDK(Java Development Kit)是Sun Microsystems为Java...
**标题:“jdk.tools-1.7.jar”** **描述详解:** `jdk.tools-1.7.jar` 是Java Development Kit(JDK)1.7版本的一部分,它包含了用于开发、编译、调试和管理Java应用程序的工具类库。这个特定的JAR文件尤其重要,...
jdk 17需要 新增 配置 如下 jvm参数 --add-opens=java.base/jdk.internal.org.objectweb.asm=ALL-UNNAMED --add-opens=java.base/jdk.internal.org.objectweb.asm.tree=ALL-UNNAMED
**Java Development Kit (JDK) 1.5.0.22 64位详解** JDK(Java Development Kit)是Oracle公司发布的用于开发、编译、调试Java应用程序的工具集合。版本1.5.0.22是JDK的一个历史版本,也被称为Java 5.0 Update 22,...
Java开发工具包(Java Development ...理解并掌握JDK 17.0.8的功能和使用方法对于Java开发者至关重要,因为它是构建、测试和部署Java应用的基础。开发者可以根据自身需求选择适合的JDK版本,以保证代码的兼容性和性能。
这两个jar包的区别在于,"bcprov-ext-jdk15on-154.jar"是扩展版本,包含了更多不常用的加密算法,而"bcprov-jdk15on-154.jar"则是基础版本,包含了常见的加密算法。 "Could not generate DH keypair"这个异常通常...
首先,IBM JDK 1.5在兼容性方面进行了加强,确保了与Oracle JDK 1.5的源代码兼容性,这意味着开发者可以在IBM JDK环境下编写和运行已经在Oracle JDK上测试过的Java程序。同时,IBM JDK也针对Linux 64位架构进行了...
尽管现代项目通常使用更新的JDK版本以利用更多的功能和性能提升,但理解JDK 1.5的特性仍然对理解和维护旧代码库至关重要。因此,这个压缩包中的"jdk1.5.exe"可能是开发者为了兼容性或历史项目而寻找的重要资源。
本话题涉及三个不同版本的JDK:jdk-8u172-windows-x64.exe、jdk-8u251-windows-x64.exe以及jdk-14.0.1_windows-x64_bin.exe,分别对应Java 8的两个更新版本和Java 14的一个版本。 首先,让我们详细了解一下Java 8。...
总的来说,JDK 1.5是一个里程碑式的版本,它的许多新特性如泛型、枚举、注解和自动装箱/拆箱等,极大地提高了Java开发的效率和代码质量,也为后续版本奠定了坚实的基础。如果你习惯了使用JDK 1.7,但对JDK 1.5有特殊...
Java Development Kit (JDK) 是Java编程语言的核心组件,它为开发者提供了编译、调试和运行Java应用程序所需的所有工具。JDK 11.0.8是Oracle公司发布的一个稳定版本,它包含了Java运行时环境(JRE)以及用于开发和...
**Java Development Kit (JDK) 11.0.18 for Windows 64位** JDK(Java Development Kit)是Oracle公司发布的用于开发Java应用程序的软件开发工具包,它是Java程序员编写、编译、调试和运行Java应用程序的必备工具。...
Java Development Kit(简称JDK)是Oracle公司发布的用于开发和运行Java应用程序的工具包,它包含Java编译器、Java虚拟机(JVM)以及Java类库等组件。本篇将详细探讨 JDK 8u201 版本在Linux环境下的安装与使用。 ...
**Java Development Kit (JDK) 11.0.20 for Windows x64** Java Development Kit (JDK) 是Oracle公司提供的用于开发和运行Java应用程序的重要工具集。JDK 11.0.20 版本是针对Windows x64平台的一个更新版本,包含了...
JDK 1.6是Java平台标准版的一个重要版本,它提供了许多功能和性能改进,是许多企业级应用的基础。 JDK 1.6u45在发布时包含了Java编译器(javac)、Java虚拟机(JVM)、Java运行环境、开发者工具集(如Javadoc和JAR...
标题和描述中提到的是ARM架构下的Java开发工具包(JDK)版本11.0.20,适用于Linux操作系统,并且是为aarch64(64位ARM)平台编译的。这个压缩包文件“jdk-11.0.20_linux-aarch64_bin.tar”包含了运行和开发Java应用...