`
liuxi1024
  • 浏览: 390215 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

基础巩固--概念总结(JVM相关、jdk1.5较1.4新功能、HashMap与HashTabel区别......)

阅读更多

面试时有用

 

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和ssl-provider-jvm16-0.2.jar

    标题中的"bcprov-ext-jdk15on-1.54.jar"和"bcprov-jdk15on-1.54.jar"是Bouncy Castle提供的Java加密库,用于增强Java平台的安全性。Bouncy Castle是一个开源项目,提供强大的加密算法实现,包括SSL/TLS协议支持,...

    jdk1.5(jdk-1_5_0_08-windows-i586-p.exe)

    **Java Development ...这个版本的JDK不仅提供了新的语法和功能,还优化了性能,提升了开发效率。对于初学者和经验丰富的开发者来说,理解和掌握这些特性都是必要的,因为它们至今仍在现代Java开发中发挥着重要作用。

    JDK1.5.0.06 32位

    **JDK 1.5.0.06 32位详解** JDK(Java Development Kit)是Oracle公司提供的用于开发Java应用程序的软件开发工具包,它是Java编程环境的基础。JDK 1.5.0.06是JDK的一个特定版本,发布于2005年,属于Java SE(标准版...

    jdk1.5 windows版本 64位

    总结,JDK 1.5的64位Windows版本为Java开发者提供了在64位系统上开发和运行Java应用程序的强大支持。通过理解其新特性和配置要求,开发者可以充分利用这个工具集,进行高效、高质量的软件开发。

    JDK1.4 JDK1.5

    在探讨如何在操作系统中同时安装了JDK1.4和JDK1.5的情况下更改环境变量等设置之前,我们先来了解一下JDK的基本概念及其版本更迭的重要性。 ### JDK简介 JDK(Java Development Kit)是Sun Microsystems为Java...

    jdk.tools-1.7.jar

    **标题:“jdk.tools-1.7.jar”** **描述详解:** `jdk.tools-1.7.jar` 是Java Development Kit(JDK)1.7版本的一部分,它包含了用于开发、编译、调试和管理Java应用程序的工具类库。这个特定的JAR文件尤其重要,...

    Ja-netfiter-2022.2.0 主要更新对 jdk 17的兼容

    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

    jdk1.5.0.22 64位

    **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,...

    jdk-17.0.8(jdk-17-linux-x64-bin.tar.gz)

    Java开发工具包(Java Development ...理解并掌握JDK 17.0.8的功能和使用方法对于Java开发者至关重要,因为它是构建、测试和部署Java应用的基础。开发者可以根据自身需求选择适合的JDK版本,以保证代码的兼容性和性能。

    bcprov-ext-jdk15on-154.jar和bcprov-jdk15on-154.jar

    这两个jar包的区别在于,"bcprov-ext-jdk15on-154.jar"是扩展版本,包含了更多不常用的加密算法,而"bcprov-jdk15on-154.jar"则是基础版本,包含了常见的加密算法。 "Could not generate DH keypair"这个异常通常...

    IBMJDK1.5linux.zip

    首先,IBM JDK 1.5在兼容性方面进行了加强,确保了与Oracle JDK 1.5的源代码兼容性,这意味着开发者可以在IBM JDK环境下编写和运行已经在Oracle JDK上测试过的Java程序。同时,IBM JDK也针对Linux 64位架构进行了...

    jdk1.5.zip 免费分享,哈哈

    尽管现代项目通常使用更新的JDK版本以利用更多的功能和性能提升,但理解JDK 1.5的特性仍然对理解和维护旧代码库至关重要。因此,这个压缩包中的"jdk1.5.exe"可能是开发者为了兼容性或历史项目而寻找的重要资源。

    jdk-8u172-windows-x64.exe、jdk-8u251-windows-x64.exe、jdk-14.0.1_windows-x64_bin.e

    本话题涉及三个不同版本的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。...

    jdk1.5.rar

    总的来说,JDK 1.5是一个里程碑式的版本,它的许多新特性如泛型、枚举、注解和自动装箱/拆箱等,极大地提高了Java开发的效率和代码质量,也为后续版本奠定了坚实的基础。如果你习惯了使用JDK 1.7,但对JDK 1.5有特殊...

    jdk-11.0.8.jdk.zip

    Java Development Kit (JDK) 是Java编程语言的核心组件,它为开发者提供了编译、调试和运行Java应用程序所需的所有工具。JDK 11.0.8是Oracle公司发布的一个稳定版本,它包含了Java运行时环境(JRE)以及用于开发和...

    最新版windows jdk-11.0.18-windows-x64-bin.zip

    **Java Development Kit (JDK) 11.0.18 for Windows 64位** JDK(Java Development Kit)是Oracle公司发布的用于开发Java应用程序的软件开发工具包,它是Java程序员编写、编译、调试和运行Java应用程序的必备工具。...

    jdk-8u201-linux-x64.tar.gz jdk8版本下载

    Java Development Kit(简称JDK)是Oracle公司发布的用于开发和运行Java应用程序的工具包,它包含Java编译器、Java虚拟机(JVM)以及Java类库等组件。本篇将详细探讨 JDK 8u201 版本在Linux环境下的安装与使用。 ...

    jdk-11.0.20-windows-x64-bin

    **Java Development Kit (JDK) 11.0.20 for Windows x64** Java Development Kit (JDK) 是Oracle公司提供的用于开发和运行Java应用程序的重要工具集。JDK 11.0.20 版本是针对Windows x64平台的一个更新版本,包含了...

    jdk-6u45-linux-x64.zip_jdk-1.6u45_jdk-6u45_jdk-6u45-linux-x64_jd

    JDK 1.6是Java平台标准版的一个重要版本,它提供了许多功能和性能改进,是许多企业级应用的基础。 JDK 1.6u45在发布时包含了Java编译器(javac)、Java虚拟机(JVM)、Java运行环境、开发者工具集(如Javadoc和JAR...

    arm架构下jdk-11.0.20-linux-aarch64-bin.tar jdk11

    标题和描述中提到的是ARM架构下的Java开发工具包(JDK)版本11.0.20,适用于Linux操作系统,并且是为aarch64(64位ARM)平台编译的。这个压缩包文件“jdk-11.0.20_linux-aarch64_bin.tar”包含了运行和开发Java应用...

Global site tag (gtag.js) - Google Analytics