![](https://img-blog.csdnimg.cn/20201014180756919.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java
文章平均质量分 56
世宇同学
这个作者很懒,什么都没留下…
展开
-
一、java平台的了解
一、特点1.一次书写,多次运行(跨平台)2.面向对象(封装,继承,多态)注意:多次运行的指在安装了java运行环境的主机上可以运行。与硬件无关,与操作系统无关。JDK>JRE>JVM>JAVA二、流程编写好java源代码->javac(java语言编译器)将源代码变成字节码,通常我们经常看到的.class文件->java虚拟机将字节码转换成计算...原创 2018-10-31 18:59:51 · 116 阅读 · 0 评论 -
Eclipse里面给Web项目更换JDK版本并且重新编译项目
项目选中,右键–>Properties–>Project Facets,打开如下界面:Apply and Close以后,项目会重新编译。原创 2019-03-31 11:49:09 · 2472 阅读 · 0 评论 -
九、请介绍类加载过程,什么是双亲委派模型?
一、类加载1.什么是类加载?JVM将编译好的.class文件(字节码文件)以二进制流的方式加载到我们内存中,并且将二进制流中静态的数据结构转换成我们方法区中动态运行数据结构,并且在对堆内存生成一个java.lang.class对象,作为提供给外界访问我们方法区动态运行数据结构的一个入口。2.类加载器有哪些?主要的就是启动类加载器(BootStrap ClassLoader)和其他所...原创 2018-11-01 19:43:46 · 5159 阅读 · 0 评论 -
八、抽象类的接口的区别
一,基本区别1.抽象类允许有具体成语方法的实现,而接口必须方法都是抽象的,不能有实现。2.一个类只可以继承一个抽象类,但是却可以实现多个接口。3.抽象类允许有各种类型的成员变量,而接口的成员变量是public static final的。4.抽象类中允许有静态代码块和静态方法,而接口没有。5.抽象类的方法可以用public,protect,默认,private修饰,而接口中的方...原创 2018-10-31 21:40:26 · 126 阅读 · 0 评论 -
七、对比Hashtable、HashMap、TreeMap有什么不同?(设计、性能、安全)
都实现了map接口,以键值对key-value存储和操作数据的容器结构。一、低层实现、性能、安全Hashtable:无序,线程安全,效率低,哈希表(数组+链表)的实现,不允许key有空值。(因为效率低且开销大,现在已经很少使用了)HashMap:无序,线程不安全,效率高,哈希表(数组+链表)的实现,允许有一个key为空值。(get和put的操作通常情况下能够达到常数的时间性能)Tr...原创 2018-10-31 21:23:19 · 238 阅读 · 0 评论 -
六、对比Vector、ArrayList、LinkedList有何区别?(设计、性能、安全)
都实现了list接口,提供了对应的增加,获取,删除对象的方法等等。一、低层设计实现、安全、性能Vector:低层实现是用数组实现的,线程安全,但是效率低,适合多线程中使用,经常读取对象,少插入和删除中使用。ArrayList:低层实现使用数组实现的,线程不安全,效率高,适合单线程中使用,经常读取对象,少插入和删除中使用。LinkedList:低层采用双向链表实现的,线程不安全,适合...原创 2018-10-31 20:16:11 · 141 阅读 · 0 评论 -
五、int和Integer有什么区别?
一.基本使用对比int是基本数据类型,作为成员变量的时候默认值为0。Integer是int的包装类,作为成员变量的时候默认值为null。int不需要实例化可以直接使用,Integer需要实例化以后才可以使用。int是直接存放数值的,而Integer是对对象的引用。二.比较大小处理(使用==)一般是比较相同的数:1.一个int和一个Integer:int a=5;...原创 2018-10-31 19:53:47 · 544 阅读 · 0 评论 -
四、 String、StringBuffer、StringBuilder有什么区别?
String:字符串常量,不可变的。(字符串的拼接,截取等等都会产生大量的对象)StringBuffer:字符串缓冲区,可变的,线程安全的,效率低。多线程下共享同一个变量使用。StringBuilder:字符串缓冲区,可变的,线程不安全的,效率高。单线程使用效率高。...原创 2018-10-31 19:37:44 · 139 阅读 · 0 评论 -
三、final、finally、 finalize有什么不同?
一、final 不可变通常用来修饰一个类或者一个方法或者一个变量1.修饰类的时候,表示这个类是不可以被继承的。(避免重写方法,更改一些功能)2.修饰方法的时候,表示这个方法是不可以被重写的。(同上)3.修饰变量的时候,表示这个变量的引用是不可以更改的。(保证变量的值是正确的,避免被乱修改)二、finally 最后的通常和try-catch语句块一起使用,用来确保某些业务处理...原创 2018-10-31 19:27:19 · 145 阅读 · 0 评论 -
二、Exception和Error有什么区别?
一、Exception:程序运行过程中,可能出现的一些异常,是要求程序去处理或者捕获的。是因为程序的设计或者一些输入等等之间引起的问题。Exception是java运行时候可能出现的一种异常,分为运行时(非受检异常)异常和非运行时异常(受检异常)。1.运行时异常:如数组访问下标越界,空指针异常,数字转换异常等等。通常程序不强制我们去捕获这种异常,但是鼓励我们去捕获这种异常。2.非运...原创 2018-10-31 19:13:08 · 190 阅读 · 0 评论 -
查看java编译后的class版本
1.使用EditPlus打开class文件。编码方式选择,以16进制方式显示只看第一行数据,前面8个字节CA FE BA BE是固定的,之后4个字节00 00 是次版本号,次版本号后面的4个字节00 33 是jdk的版本号jdk版本号对应关系如下:版本号 对应十进制 jdk版本号 2E 46 jdk1.2 2F 47 ...原创 2019-03-31 11:56:11 · 6130 阅读 · 1 评论