Java SE知识补充
来源:互联网 发布:淘宝靠谱电玩店 编辑:程序博客网 时间:2024/05/23 00:33
1.集合接口的结构:
Collection:List、Set
Map
2.集合接口各自的作用:
Collections类:对集合进行操作
Collection接口:存储对象,可重复
List接口:可重复存储,有序,线性结构
Set接口:不重复的,无序
Map接口:存储键值对,键是唯一的
3.List 实现类有哪些?区别?
ArrayList: 底层技术是数组,遍历和随机访问速度快,
插入和删除效率低;
线程非安全,速度快;
Vector: 线程安全,速度慢;
支持枚举遍历。
LinkedList: 底层是链表
插入 和 删除效率高,遍历和随机访问慢。
4.Set接口实现类有哪些?区别?
HashSet:唯一
可以存null值
数据结构是 哈希表
存储数据唯一原理:
先调用hashCode()方法,值不同,
认为是不同对象可存储;值相同,
再掉用equals()方法比较,相同
认为是相同对象 不能存储,不相同,
则可以存储。
TreeSet:
数据结构 二叉树
可自然升序排序,
可自定义排序重写 compareTo()方法
LinkedHashSet
数据结构是: 链表和哈希表
可存null值
可按添加顺序访问
5.Map接口实现类有哪些?区别?
HashMap:
线程非安全,速度快
可存 null键,null值
如果键相同了,会覆盖之前的值(键是唯一的)
Hashtable
线程安全,速度慢
TreeMap
可按键排序
6.String,StringBuffer,StringBuilder区别?
String:定长 ,new的存在堆中,不是new出来的存在方法区的常量池中
== 判断地址 对象
equals()比较值
concat()连接,创建新的对象
频繁更改字符串的值时:
StringBuffer:线程安全,速度慢
StringBuilder:不安全,慢
7.String类常用的方法?
length()长度
charAt(index)
substring(begin,end):从begin到end-1
8.== 与 equals区别?
== 判断地址 对象
equals()比较值
9.什么是装箱拆箱?8个封装类是什么?
装箱:基本->引用
把值包装成对象
拆箱:引用->基本
把对象中的值取出来
Byte Short Integer Long Float Double Character Boolean
10.什么是序列化和反序列化?
永久性的存储对象
ObjectInputStream 反序列化
ObjectOutputStream 序列化
11.线程的生命周期?
新建 new
就绪
运行
阻塞
区别:
wait():参数可选 ms,放弃了执行权,放弃了锁
sleep():必须带参 ms,放弃了执行权,不放弃锁
死亡
12.实现线程的两种方式?区别?
继承Thread:继承类中所有能继承的方法
实现接口Runnable只有实现run();更有利于资源共享,可以绑定同一对象
13.强制垃圾回收对象的方法?
强制通知
System.gc();//对象为空后执行
14.finalize,final,finally的作用?
finalize:垃圾回收机制
final:
类:不能被继承
方法:不能被重写
变量:常量,值不能被改变
finally:必须执行的代码
当遇到System.exits(0)时例外
Collection:List、Set
Map
2.集合接口各自的作用:
Collections类:对集合进行操作
Collection接口:存储对象,可重复
List接口:可重复存储,有序,线性结构
Set接口:不重复的,无序
Map接口:存储键值对,键是唯一的
3.List 实现类有哪些?区别?
ArrayList: 底层技术是数组,遍历和随机访问速度快,
插入和删除效率低;
线程非安全,速度快;
Vector: 线程安全,速度慢;
支持枚举遍历。
LinkedList: 底层是链表
插入 和 删除效率高,遍历和随机访问慢。
4.Set接口实现类有哪些?区别?
HashSet:唯一
可以存null值
数据结构是 哈希表
存储数据唯一原理:
先调用hashCode()方法,值不同,
认为是不同对象可存储;值相同,
再掉用equals()方法比较,相同
认为是相同对象 不能存储,不相同,
则可以存储。
TreeSet:
数据结构 二叉树
可自然升序排序,
可自定义排序重写 compareTo()方法
LinkedHashSet
数据结构是: 链表和哈希表
可存null值
可按添加顺序访问
5.Map接口实现类有哪些?区别?
HashMap:
线程非安全,速度快
可存 null键,null值
如果键相同了,会覆盖之前的值(键是唯一的)
Hashtable
线程安全,速度慢
TreeMap
可按键排序
6.String,StringBuffer,StringBuilder区别?
String:定长 ,new的存在堆中,不是new出来的存在方法区的常量池中
== 判断地址 对象
equals()比较值
concat()连接,创建新的对象
频繁更改字符串的值时:
StringBuffer:线程安全,速度慢
StringBuilder:不安全,慢
7.String类常用的方法?
length()长度
charAt(index)
substring(begin,end):从begin到end-1
8.== 与 equals区别?
== 判断地址 对象
equals()比较值
9.什么是装箱拆箱?8个封装类是什么?
装箱:基本->引用
把值包装成对象
拆箱:引用->基本
把对象中的值取出来
Byte Short Integer Long Float Double Character Boolean
10.什么是序列化和反序列化?
永久性的存储对象
ObjectInputStream 反序列化
ObjectOutputStream 序列化
11.线程的生命周期?
新建 new
就绪
运行
阻塞
区别:
wait():参数可选 ms,放弃了执行权,放弃了锁
sleep():必须带参 ms,放弃了执行权,不放弃锁
死亡
12.实现线程的两种方式?区别?
继承Thread:继承类中所有能继承的方法
实现接口Runnable只有实现run();更有利于资源共享,可以绑定同一对象
13.强制垃圾回收对象的方法?
强制通知
System.gc();//对象为空后执行
14.finalize,final,finally的作用?
finalize:垃圾回收机制
final:
类:不能被继承
方法:不能被重写
变量:常量,值不能被改变
finally:必须执行的代码
当遇到System.exits(0)时例外
阅读全文
0 0
- Java SE知识补充
- Java SE知识梳理
- java SE 知识总结
- java语言知识补充
- [2] JAVA知识补充
- Java相关知识补充
- java多线程知识补充
- JAVA SE简单的知识
- Java Se----语法基础(补充)
- java.se.io.14.文字补充
- 1. JAVA 2 SE 入门知识
- java se的一些知识总结
- Java SE基础是知识汇总
- java课设第一天-补充java课外知识
- java知识图谱,java se -->java web-->j2ee
- java细小知识补充(四)
- 知识补充
- 知识补充
- 自制验证码生成器
- 京东2018校招在线笔试编程题①
- log4j自定义日志
- File文件基本操作之一: java 复制文件夹及其下面的子文件夹
- jquery选项卡
- Java SE知识补充
- JS的作用域和声明提前
- 读书笔记-面向对象
- Http协议与TCP协议简单理解
- Java流:将指定目录和子目录下的指定扩展名(.java)的文件所在路径写到一个文件中,形成一个文件清单。
- Spring Boot第一弹:Spring Boot之“Hello World”
- VS2010添加现有的一个CPP文件在加载文件时候报错:使用简体中文加载文件xxx.cpp的时候,有些字节已使用Unicode替换……
- EL表达式知识点
- if __name__=='__main__':