08 2017 档案

摘要:本篇来聊聊java中内存回收机制。 如果有c++编程经验的朋友,肯定知道在c++中如果创建了一个对象,当不再使用的时候,需要手动调用delete方法来进行销毁。那么在java中我们为什么可以自由的创建对象而不用去考虑(其实也是要考虑的,只是平常忽略了它)?因为java提供了一套完整的垃圾回收机制(g 阅读全文
posted @ 2017-08-30 10:31 moonfish 阅读(2262) 评论(0) 推荐(0)
摘要:位移运算符以前一直没怎么注意,今天因为某些原因使用了一下,结果跟预期不一样,所以回头看了一下,最终发现在使用的时候还是有一些注意事项的。 java中提供了3个位移运算符: 1.带符号的右移运算符(>>):将运算符左边的运算对象向右移动运算符右侧指定的位数。“有符号”右移位运算符使用了“符号扩展”:若 阅读全文
posted @ 2017-08-29 10:41 moonfish 阅读(338) 评论(0) 推荐(0)
摘要:本篇讲述的是文档对象模型(DOM)。 JavaScript在Web开发中的主要作用是用于与用户交互,而DOM便是我们实现这些功能的基础。DOM是W3C提供的一种标准,它为开发人员提供了一种方式以表达网页中的所有元素。我们可以通过JavaScript修改页面元素相应的DOM属性,便可以对页面中的元素进 阅读全文
posted @ 2017-08-25 23:29 moonfish 阅读(270) 评论(0) 推荐(0)
摘要:由于在看io源码中偶尔看到FileDescriptor,所以本篇决定讲讲FileDescriptor,从字面上来看它就是文件描述符。 官方是这么描述的: 可以看出,FileDescriptor可以看做一种指向文件引用的抽象化概念。它能表示一个开放文件,一个开放的socket或者一个字节的源。它最主要 阅读全文
posted @ 2017-08-24 12:27 moonfish 阅读(567) 评论(0) 推荐(0)
摘要:本篇将要讲述的内容是java io中的DataInput 和 DataOutput。 就像前面讲述的RandomAccessFile一样,它实现的就是这两个接口,这两个接口分别提供了从流中读取二进制数据转化为java基本数据和向流中写入由java基本数据转成的二进制数据,功能十分强大。 下面还是先贴 阅读全文
posted @ 2017-08-18 16:29 moonfish 阅读(1085) 评论(0) 推荐(0)
摘要:本篇讲述的内容是java io中的InputStream和OutputStream。 我们知道流是一种抽象的概念,抽象了输入输出设备。在java中,所有的流对象都位于java.io包中,其中有4个流是特殊的,通过它们可以衍生出所有的流对象,它们分别是InputStream/OutputStream和 阅读全文
posted @ 2017-08-18 16:27 moonfish 阅读(199) 评论(0) 推荐(0)
摘要:众所周知,我们编写的程序是跑在浏览器之中的,在前面的学习中,我们知道了JavaScript是基于对象的,其实浏览器也是由各种对象组成的。JavaScript在运行时,我们可以访问到浏览器的对象,像之前曾使用过的alert方法和prompt方法其实就是浏览器对象window的方法。除了window对象 阅读全文
posted @ 2017-08-16 21:30 moonfish 阅读(202) 评论(0) 推荐(0)
摘要:在前面的篇幅中曾经简单的讲述了一下Date对象的一些方法和属性,本篇将更为详细的介绍Date对象的使用方法。 在网页制作时,我们经常会用到时间。然而我们知道,地球上不同地方同一时刻用来表示时间的值是不同的,也就是平常我们所说的有时差了,那么当我们描述一个时间的时候,怎么让别人知道我们用的什么地方的时 阅读全文
posted @ 2017-08-16 13:40 moonfish 阅读(452) 评论(0) 推荐(0)
摘要:本篇将要讲述的是在JavaScript中字符串的操作,上一篇也讲述了一些字符串的简单属性和方法,本篇将更加全面的讲述并且简单的介绍一下正则表达式在javascript中的使用。 先来说说String对象的一些其它方法: split(): 该方法用于将字符串按照传入的分割参数分割成一个字符串数数组,举 阅读全文
posted @ 2017-08-15 21:45 moonfish 阅读(111) 评论(0) 推荐(0)
摘要:本篇讲的内容是序列化,以及ObjectInputStream和ObjectOutputStream流。 我们知道java是基于对象编程的,我们前面在进行流传输数据时,要么是以字节传输,要么是以字符传输,如果能在流中传输对象岂不是更为方便,幸运的是java在这个方面提供了支持,序列化和反序列技术帮我我 阅读全文
posted @ 2017-08-15 17:38 moonfish 阅读(328) 评论(0) 推荐(0)
摘要:本篇讲的java io中的SequenceInputStream流。 SequenceInputStream是一个合并流,当我们从多个流中读取数据,并希望他们合并成一个流作为数据源时,我们就可以使用SequenceInputStream。它的内部是通过Vector来实现的,至于Vector是什么会在 阅读全文
posted @ 2017-08-15 17:37 moonfish 阅读(256) 评论(0) 推荐(0)
摘要:今天在看源码的时候看到了一个类叫AtomicInteger,所以决定探索一番。 从源码中看出,AtomicInteger继承自Number类,值得注意的是其中的value属性是用volatile关键字修饰的,这个关键字在java 1.5之前经常容易引发一些意想不到的错误,之后得到了优化,才得以重生。 阅读全文
posted @ 2017-08-15 10:22 moonfish 阅读(388) 评论(0) 推荐(0)
摘要:在前面的篇幅中我们有用到过System.int,System.out,那么它们是怎么工作的呢,本篇将来简单的说说它们。 从源码中看出System.in,System.out,System.err都是System类中的静态属性,如图所示: 可以看出System.in是一个InputStream,Sys 阅读全文
posted @ 2017-08-15 09:25 moonfish 阅读(210) 评论(0) 推荐(0)
摘要:本篇要讲述的是CharArrayReader和CharArrayWriter两个类。它们两个同之前的ByteArrayInputStream和ByteArrayOutputStream和相似,两者的主要区别是前者是基于字符数组来工作的,后者是基于字节数组来创建的。 下面先说说CharArrayRea 阅读全文
posted @ 2017-08-14 16:57 moonfish 阅读(198) 评论(0) 推荐(0)
摘要:今天讲的是ByteArrayInputStream流和ByteArrayOutputStream流。 首先让我们来看看ByteArrayOutputStream的源码: ByteArrayOutputStream.java 从源码可以看出,该类继承了OutputStream输出流,其中封装了一个by 阅读全文
posted @ 2017-08-14 14:21 moonfish 阅读(246) 评论(0) 推荐(0)
摘要:如今大部分的编程开发都离不开网络,Java IO同样可以基于网络进行开发。事实上网络编程可以看做两个进程之间的通信,我们可以通过java对网络的支持,建立两点的网络连接,连接建立成功之后,就可以看做是本地的文件操作了。前面对于文件进行的类似操作也可以适用在这里。 我们常用的有TCP/UDP建立连接, 阅读全文
posted @ 2017-08-14 10:04 moonfish 阅读(261) 评论(0) 推荐(0)
摘要:JavaScript是一门基于对象的编程语言,至于什么是对象吗,额,只可意会不可言传,用大神的话就是万物皆对象,既然如此,那边少不了要讲述一下JavaScript是如何使用对象的了。 那么JavaScript中对象是什么样子的呢,其实前面篇幅中我们已然使用过了,比如Date对象,比如Array对象。 阅读全文
posted @ 2017-08-13 15:21 moonfish 阅读(259) 评论(0) 推荐(0)
摘要:在上一篇笔记中讲述了java io 中的文件(file)以及如何用文件流来对文件进行读写操作,本篇则要讲述的是java IO中的管道流。 java IO中的管道流可以使得同一进程中的不同线程进行通信,如果不明白进程和线程的区别的话,可以去网上搜搜资料,可以看做提供同一jvm的通信能力。在java I 阅读全文
posted @ 2017-08-12 21:03 moonfish 阅读(369) 评论(0) 推荐(0)
摘要:本篇讲述在Java IO中对文件的一些操作,在java IO中,文件是一种最常见的数据源。因此java IO对其提供了专门的IO流来进行操作。 java提供了一个类来表示文件,这个类就是file类,位于java.io.file。该类的功能十分强大,下面将一一介绍。 首先我们来看看file类的构造方法 阅读全文
posted @ 2017-08-11 14:14 moonfish 阅读(154) 评论(0) 推荐(0)
摘要:在java的学习中,IO这块儿往往是初学者们需要花费一定时间来仔细学习的地方。 在我们的开发过程中,肯定要遇到数据的输入、输出,java 的核心库java.io则为我们提供了全面的IO接口。包括了文件读写,标准设备输出等。这里的IO是指java 1.4没有引入NIO的IO,后面也将另开篇幅对java 阅读全文
posted @ 2017-08-11 10:21 moonfish 阅读(226) 评论(0) 推荐(0)
摘要:作为一名计算机专业并且爱玩游戏的boy,经常幻想着有一天能玩到自己亲手写的游戏,相信很多朋友都曾有这样的想法。我最早接触的塞班系统时的那种java小游戏(记得有个桌球的游戏玩了好久),到后来游戏行业火热,各种游戏引擎出世,使得游戏开发变得更为简便,游戏质量更完美。从学校毕业在一家手游公司呆过一段时间 阅读全文
posted @ 2017-08-10 14:37 moonfish 阅读(250) 评论(0) 推荐(0)
摘要:作为一名计算机专业并且爱玩游戏的boy,经常幻想着有一天能玩到自己亲手写的游戏,相信很多朋友都曾有这样的想法。我最早接触的塞班系统时的那种java小游戏(记得有个桌球的游戏玩了好久),到后来游戏行业火热,各种游戏引擎出世,使得游戏开发变得更为简便,游戏质量更完美。从学... 阅读全文
posted @ 2017-08-10 14:37 moonfish 阅读(177) 评论(0) 推荐(0)
摘要:本次笔记将要讲述的就是函数与作用域了,其实前面的学习中,我们已经多次使用过了函数,例如alert函数,prompt函数等,这次将具体的学习一下。 函数在我理解是解决问题的一系列动作,调用不同的函数可以解决不同的问题,JavaScript中内置了很多功能强大的函数,例如上面所说的两个函数,当然我们也可 阅读全文
posted @ 2017-08-08 22:26 moonfish 阅读(136) 评论(0) 推荐(0)
摘要:第三份笔记了,今天要说的就是JavaScript中的控制语句了,也可以叫做决策语句,如if,else,switch等。 相信有编程基础的人看到这些并不陌生,因为每一种语言都会包含这些东西,也许名字不一样,但一定有相对应的功能,这是因为有了这些控制语句,我们的程序才能看起来有一定的智能。 为了了解决策 阅读全文
posted @ 2017-08-07 20:12 moonfish 阅读(181) 评论(0) 推荐(0)