Java基础内容汇总
文章平均质量分 82
本专栏专注于Java基础编程内容的学习和记录
数据圈
踏踏实实搞学习
展开
-
【java笔试系列一】内部类、外部类和嵌套类
一、什么是嵌套类及内部类可以在一个类的内部定义另一个类,这种类称为嵌套类(nested classes),它有两种类型:静态嵌套类和非静态嵌套类。静态嵌套类使用很少,最重要的是非静态嵌套类,也即是被称作为内部类(inner)。嵌套类从JDK1.1开始引入。其中inner类又可分为三种: 其一、在一个类(外部类)中直接定义的内部类; 其二、在一个方法(外部类的方法)中定义的内部类;原创 2017-06-26 11:29:39 · 451 阅读 · 0 评论 -
【java笔试系列二】String、StringBuffer和StringBuilder
一.区别String:不可变类。一旦被创建,不能修改。任何对String的改变都会引发新的String对象的生成StringBuffer:可变类。任何对它所指代的字符串的改变都不会产生新的对象。可以通过toString()方法转变为String。线程安全StringBuilder:可变类。线程不安全备注:StringBuilder是JDK1.5以后加入的,没有实现线程安全,因此性能略高。二.原创 2017-06-26 15:11:02 · 357 阅读 · 0 评论 -
【java笔试系列三】ArrayList和LinkList
一、区别ArrayList是实现了基于动态数组的数据结构,LinkedList基于链表的数据结构。 对于**随机访问**get和set,ArrayList觉得优于LinkedList,因为LinkedList要移动指针。 对于**新增和删除操作**add和remove,LinedList比较占优势,因为ArrayList要移动数据。二、效率测试static final int N=50000转载 2017-06-26 15:39:08 · 415 阅读 · 0 评论 -
【java笔试系列四】Java实现栈Stack和队列Queue
目录(1)栈的创建(2)队列的创建(3)两个栈实现一个队列(4)两个队列实现一个栈(5)设计含最小函数min()的栈,要求min、push、pop、的时间复杂度都是O(1)(6)判断栈的push和pop序列是否一致1、栈的创建:我们接下来通过链表的形式来创建栈,方便扩充。代码实现:public class Stack {public Node head; public Node current;/转载 2017-06-26 16:22:47 · 877 阅读 · 1 评论 -
【java笔试系列五】List、Set和Map
一、Set,List,Map的区别java集合的主要分为三种类型:Set(集)List(列表)Map(映射)要深入理解集合首先要了解下我们熟悉的数组:数组是大小固定的,并且同一个数组只能存放类型一样的数据(基本类型/引用类型),而JAVA集合可以存储和操作数目不固定的一组数据。 所有的JAVA集合都位于 java.util包中! JAVA集合只能存放引用类型的的数据,不转载 2017-06-27 10:46:31 · 560 阅读 · 0 评论 -
HashMap常见面试问题总结
“你用过HashMap吗?” “什么是HashMap?你为什么用到它?”几乎每个人都会回答“是的”,然后回答HashMap的一些特性,譬如HashMap可以接受null键值和值,而Hashtable则不能;HashMap是非synchronized;HashMap很快;以及HashMap储存的是键值对等等。这显示出你已经用过HashMap,而且对它相当的熟悉。但是面试官来个急转直下,从此刻开始原创 2017-06-27 16:29:19 · 5279 阅读 · 0 评论 -
【java笔试系列六】I/O整理
一、简介Java IO主要在java.io包下,分为四大块近80个类:1、基于字节操作的I/O接口:InputStream和OutputStream2、基于字符操作的I/O接口:Writer和Reader3、基于磁盘操作的I/O接口:File4、基于网络操作的I/O接口:Socket(不在java.io包下)影响IO性能的无非就是两大因素:数据的转载 2017-06-27 22:01:37 · 593 阅读 · 0 评论 -
【java笔试系列七】java多线程
多线程(英语:multithreading),是指从软件或者硬件上实现多个线程并发执行的技术。具有多线程能力的计算机因有硬件支持而能够在同一时间执行多于一个线程,进而提升整体处理性能。具有这种能力的系统包括对称多处理机、多核心处理器以及芯片级多处理(Chip-level multithreading)或同时多线程(Simultaneous multithreading)处理器。在一个程序中,这些独立运行的程转载 2017-06-29 11:26:37 · 444 阅读 · 0 评论 -
【java笔试系列八】Java网络编程
一. 前言网络编程的目的就是指直接或间接地通过网络协议与其他计算机进行通讯。 网络编程中有两个主要的问题 :一个是如何准确的定位网络上一台或多台主机[【TCP/IP】一个就是找到主机后如何可靠高效的进行数据传输。【TCP/IP VS UDP】在TCP/IP协议中IP层主要负责网络主机的定位,数据传输的路由,由IP地址可以唯一地确定Internet上的一台主机。而TCP层则提供面向应用的可原创 2017-07-03 15:42:40 · 803 阅读 · 0 评论