自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

孙海峰的博客

今日原上草,明日炉中烧。

  • 博客(18)
  • 资源 (15)
  • 收藏
  • 关注

原创 Java RandomAccessFile文件操作详解

简介: RandomAccessFile类可以对文件随机访问的操作,访问包括读和写操作。该类的读写是基于指针的操作。 RandomAccessFile对文件进行随机访问操作时有两个模式,一种是只读(r),另一种是读写(rw),需在创建RandomAccessFile对象时传入一个参数进行设置,第一个参数代表要访问的文件,第二个参数代表设置访问模式 RandomAccessFile(File f

2015-07-31 06:38:57 8398

原创 Java HashMap LinkedHashMap 区别及原理

HashMap原理 HashMap是Map的一个常用的子类实现。其实使用散列算法实现的。 HashMap内部维护着一个散列数组(就是一个存放元素的数组),我们称其为散列桶,而当我们向HashMap中存入一组键值对时,HashMap首先获取key这个对象的hashcode()方法的返回值,然后使用该值进行一个散列算法,得出一个数字,这个数字就是这组键值对要存入散列数组中的下标位置。 那么得知了下

2015-07-25 22:26:02 10444

原创 Java 中 Map 的使用

Map接口提供了一组可以以键-值对(key,value)形式存储的数据结构。 Map对存入元素只有一个要求,就是键(key)不能重复,Map对于key,value要求不是很严格,key只要是引用类型即可。通常情况下,使用String和Integer比较多。Map提供了一个方法用来存入数据: V put(K k,V v) 该方法的作用是将key-value对存入Map中,因为Map中不允许出现重

2015-07-25 19:53:25 2076

原创 Java中的queue和deque

队列(queue)是一种常用的数据结构,可以将队列看做是一种特殊的线性表,该结构遵循的先进先出原则。Java中,LinkedList实现了Queue接口,因为LinkedList进行插入、删除操作效率较高 相关常用方法: boolean offer(E e):将元素追加到队列末尾,若添加成功则返回true。 E poll():从队首删除并返回该元素。 E peek():返回队首元素,但是不删

2015-07-25 07:09:07 38435 4

原创 Java List详解

List接口是Collection的子接口,用于定义线性表结构,其中ArrayList可以理解为一个动态数组,而LinkedList可以理解为一个链表常用操作: 插入和删除操作: void add(int index,E element): 将给定的元素插入到指定位置,原位置及后续元素都顺序向后移动。 E remove(int index): 删除给定位置的元素,并将被删除的元素返回。ge

2015-07-24 23:32:55 8695

原创 Java Iterator和增强for循环 for each详解

Iterator是Java中的一个迭代器接口(Interface),用来提供标准的Java迭代器 Iterator支持泛型因为集合(Collection)类可以装入的类型是不确定的,从集合中取出的都是Object类型,加入泛型,就是告诉编译器确定要装入的对象类型,取值时就无需强制转换了。for each 是 Java 5 中新增的一个循环结构,本质上是一个Iterator,特点是可以用来遍历集合元

2015-07-23 21:30:01 4803

原创 Java常用日期操作详解

Date类型大多数时间分量计算方法已经被Calendar取代 Date常用方法setTime getTime() new Date();默认获取当前的时间SimpleDateFormat用来格式化和解析日期的具体类 匹配日期的字符串 y–>年 M–>月 d–>日 E–>星期 a–>上下午 H–>小时(24小时制) h–>小时(12小时制) m–>分 s–>秒格式化Date返回

2015-07-22 21:47:35 2609

原创 Java造型中的强制转换

强制类型转换成功的条件: 引用所指向的对象,就是该类型 引用所指向的对象,实现了该接口//向上造型演示public class UpDemo { public static void main(String[] args) { Aoo o = new Boo(); //向上造型 Boo o1 = (Boo)o; //强制类型转换 In

2015-07-14 21:57:27 1516

原创 Java中的多态

概念: 行为的多态: 同一类型的引用指向不同的对象时,有不同的实现 对象的多态: 同一对象被造型为不同的类型时,有不同的功能例子:public static void main(String[] args) { Person person = new Doctor(); person.cut(); person = ne

2015-07-14 20:17:24 925

转载 Java语言中的面向对象总结

Java语言中的面向对象特性 【课前思考】   1. 什么是对象?什么是类?什么是包?什么是接口?什么是内部类?   2. 面向对象编程的特性有哪三个?它们各自又有哪些特性?   3. 你知道java语言在面向对象编程方面有何独特的特点吗? 难点:   1. 理解方法重载和方法重写,不要混淆了两者的使用。   2. 类变量和类方法的使用。   3. 接口的使用。 3.1

2015-07-14 06:26:05 1112

原创 Java中this用法详解

this关键字: this关键字在方法体中,用于指代调用该方法的当前对象,简单的说:哪个对象调用方法,this指的就是哪个对象。严格来讲,在方法中需要通过this关键字来致命当前的对象。 下面我们创建一个A类,里面有三个方法和一个int型变量num,代码如下:class A { int num = 0; public void Num(int num) {

2015-07-12 18:00:18 12560 1

原创 Ubuntu OracleJDK离线安装教程

安装OracleJDK步骤: 第一步: 去官网下载JDK,下载链接: http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html 选择相应版本自行下载。 第二步: 将下载的压缩包解压到想安装的目录,例如/opt目录。 如果没有权限,完全可以尝试 $sudo chmod -R 77

2015-07-12 09:27:11 1960

原创 Java 向上造型详解

子类的对象可以向上造型为父类的类型。即父类引用子类对象,这种方式被称为向上造型。在日常生活中,我们都扮演着不一样的角色。我们有可能是老师,有可能是学生,有可能是……, 但是我们都有共同的属性,例如:名字、性别、年龄……,但是在该基础上,不同身份的人也有着属于自己的不同的特点。我们通常描述他人的时候会说,这个人是老师,这个认识学生,这个人是个程序员……。实际上“这个人是……”这种说法就是向上造型。直接

2015-07-12 09:00:45 38613 11

原创 JAVA 对象内存管理

在JAVA中,JVM会将申请的内存从逻辑上划分为三个区域:堆、栈、方法区。这三个区域分别用于存储不同的数据。JVM在其内存空间开辟了一个称为“堆”的存储空间,这部分空间用于存储使用new关键字所创建的对象。代码如下:Cell c = new Cell ();当声明好对象之后,对该对象(堆中的Cell)的访问需要依靠引用变量(栈中的c),那么当一个对象没有任何引用时,该对象被视为废弃的对象,

2015-07-09 23:05:56 1607

原创 Ubuntu安装VSCode

打开终端并运行下面的命令:sudo add-apt-repository ppa:ubuntu-desktop/ubuntu-makesudo apt-get updatesudo apt-get install ubuntu-make如果已经安装,运行下面的命令:umake web visual-studio-code请注意,在安装过程中, 你会问,给出路径 insatllation 软件包.

2015-07-08 23:53:51 24731 2

原创 Ubuntu安装OracleJDK

Ubuntu 安装Oracle JRE/JDK1、添加ppasudo apt-get install python-software-propertiessudo add-apt-repository ppa:webupd8team/javasudo apt-get update2、选择要安装的版本并执行以下命令(任选其一)sudo apt-get install oracle-java6-in

2015-07-08 23:49:11 893

原创 为Github账户设置SSH key

什么是SSH key一直使用SSH连接服务器,但是对它的原理却不太了解。这次设置Octopress的时候,需要使用SSH 方式连接Github, 正好对SSH的工作方式做了下了解。(好像Github推荐使用HTTPS的方式访问repo, 以前Github受到过SSH密匙攻击,之后升级了SSH key的安全措施,https方式视乎更方便安全,不过Octopress的设置文档中,我并没有找到怎么使用HT

2015-07-08 23:32:30 3392 1

原创 Java Scanner next()和nextLine()的区别

Java Scanner next()和nextLine()的区别Scanner简单介绍: Scanner的用途广泛,而且好用,它自身包含了很多构造方法,可以接收各种类型数据,可以是一个文件、输入流、控制台…… Scanner为我们提供了很多的方法以使用,其中有两个方法next()和nextLine(),这两个方法返回的都是String类型的,那么为什么要有两个功能类似的方法,它们的区别又在

2015-07-08 23:20:28 9092 1

阿里巴巴Java开发规范1.2.0

阿里精髓,不解释,很好用,多多学习。

2017-06-09

Google JavaScript 编码规范

Google JavaScript编码规范,提升代码质量神器。

2017-06-09

Java类热替换(热部署)源码

Java 自定义ClassLoader 实现类的热替换核心代码

2017-05-25

Nio非阻塞socket通信demo

本人写的Nio非阻塞socket通信demo,内有注释。

2017-05-10

osworkflow2.8 官方jar包

osworkflow原版jar包,包含gui设计工具等。

2017-04-14

sonarrunner 2.x 全版本

sonar-scanner sonar-runner 几个经典版本打包,适合不同版本jdk下配合sonarqube对非maven项目进行代码质量审查。

2017-03-19

sonarqube 4.5.x 常用Java插件包及汉化包

包含Java常用插件包及汉化包等,兼容4.5.x版本,旧版本资源不好找。特此收藏并分享给大家

2017-03-19

staruml2.7破解补丁

该补丁为全平台版本,亲测可用,如有问题请留言及时回复。

2016-10-09

OSWorkflow中文手册 2.8

osworkflow 中文文档,内容详尽。

2016-09-28

PDM阅读器JAVA版

PDM查看器,安装java后 使用 java -jar运行即可

2016-09-07

《OSWorkflow开发指南》电子版.pdf

2016-07-13

PLSQL Developer 11 绿色版(自带连接客户端)

解压后根据说明修改配置文件即可直接连接,包含数据库连接驱动,方便快捷

2016-07-07

osworkflow2.7 API

官网已绝版的API文档,该文档为OSWORKFLOW 的2.7 版本API

2016-07-06

Oracle 12c 官方安装手册.pdf

官方推出的oracle12c 安装手册,很实用

2016-04-14

软件工程复习资料

在网上找到的,很全的软件工程复习笔记,特此分享,希望能帮助到大家

2015-05-06

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除