摘要: 一、初识Lock Lock是一个接口,提供了无条件的、可轮询的、定时的、可中断的锁获取操作,所有加锁和解锁的方法都是显式的,其包路径是:java.util.concurrent.locks.Lock,其核心方法是lock()、unlock()、tryLock(),实现类有ReentrantLock、 阅读全文
posted @ 2016-03-24 19:26 时空穿越者 阅读(870) 评论(0) 推荐(0)
摘要: 在某些情况下,我们在线程启动后发现并不需要它继续执⾏下去时,需要中断线程。 要使任务和线程能安全可靠地停止,并不是一件很容易的事情,java没有提供任何机制来安全地终止线程,那么我们该怎么办呢? —— Java提供了线程中断机制来处理需要中断线程的情况。 Java中的线程中断是一种线程间的协作机制, 阅读全文
posted @ 2016-03-24 10:58 时空穿越者 阅读(1121) 评论(0) 推荐(0)
摘要: 第一节 String类型的方法参数 运行下面这段代码,其结果是什么? 结果如下: 解说:java 中String是 immutable的,也就是不可变,一旦初始化,引用指向的内容是不可变的(注意:是内容不可变)。 也就是说,假设代码中有String str = “aa”;str=“bb”;,则第二条 阅读全文
posted @ 2016-03-23 15:11 时空穿越者 阅读(60985) 评论(4) 推荐(2)
摘要: 运行下面这段代码,其结果是什么呢? 结果是:0 上述类似代码在C/C++中运行结果是:1,这是为什么呢? 这是因为Java使用了中间缓存变量机制:i=i++;等同于:temp=i; (等号右边的i)i=i+1; (等号右边的i)i=temp; (等号左边的i)而i=++i;则等同于:i=i+1;te 阅读全文
posted @ 2016-03-22 16:45 时空穿越者 阅读(990) 评论(0) 推荐(0)
摘要: 运行下面这段代码,观察其结果: 结果如下: 解析: 1.静态代码块:是在类的加载过程的第三步初始化的时候进行的,主要目的是给类变量赋予初始值。 2.构造代码块:是独立的,必须依附载体才能运行,Java会把构造代码块放到每种构造方法的前面,用于实例化一些共有的实例变量,减少代码量。 3.构造方法:用于 阅读全文
posted @ 2016-03-22 16:07 时空穿越者 阅读(471) 评论(0) 推荐(0)
摘要: 初识Callable and Future 在编码时,我们可以通过继承Thread或是实现Runnable接口来创建线程,但是这两种方式都存在一个缺陷:在执行完任务之后无法获取执行结果。如果需要获取执行结果,就必须通过共享变量或者使用线程通信的方式来达到目的。 Java5提供了Callable和Fu 阅读全文
posted @ 2016-03-17 15:19 时空穿越者 阅读(9922) 评论(0) 推荐(0)
摘要: 第一节 初始目录结构 (1)初识目录结构 在创建应用之前,我们来看一下Yii 1.x版本的目录结构:将yii-1.1.13安装文件解压到网站根目录下,打开framework目录,其目录如下图所示 (2)认识framework目录 第二节 命令行创建应用~shop (1)创建应用 进入framewor 阅读全文
posted @ 2015-11-26 16:44 时空穿越者 阅读(915) 评论(0) 推荐(0)
摘要: 第一节 简单认识版本的异同 (1)版本说明 在安装和使用之前,我们需要知道 PHP Yii 有两个不同的版本(Yii 1.*或者Yii 2.*),这两个版本的目录结构不一样,其具体使用方式差异较大,因此我们需要简单了解一下这两个版本(详情见http://www.digpage.com/preface 阅读全文
posted @ 2015-11-26 15:37 时空穿越者 阅读(876) 评论(0) 推荐(0)
摘要: Groovy是一种基于JVM(Java虚拟机)的敏捷开发语言,它结合了Python、Ruby和Smalltalk的许多强大的特性,Groovy 代码能够与 Java 代码很好地结合,也能用于扩展现有代码。由于其运行在 JVM 上的特性,Groovy 可以使用其他 Java 语言编写的库。 阅读全文
posted @ 2015-09-05 10:09 时空穿越者 阅读(232) 评论(0) 推荐(0)
摘要: Trait 的一个主要用法,将一个瘦接口变成胖接口 trait Philosophical{ def philosophize(){ println("here") } } class Forg extends Philosophical{ override def toString="green" 阅读全文
posted @ 2015-08-28 17:15 时空穿越者 阅读(485) 评论(0) 推荐(0)
摘要: Scala 类的定义和 Java 非常类似,也是以 class 开始 访问修饰符 如果不带访问范围的修饰符 public、protected、private,Scala 缺省定义为 public Scala 不要求 public 类定义和其文件名同名 Scala 的私有成员和 Java 类似 使用 阅读全文
posted @ 2015-08-23 11:43 时空穿越者 阅读(326) 评论(0) 推荐(0)
摘要: 第一版 test-scala.sh文件内容如下: #!/bin/sh exec scala "$0" "$@" !# println("Hello, Welcome to https://www.iteblog.com!") args.foreach(println) import scala.io 阅读全文
posted @ 2015-08-15 18:02 时空穿越者 阅读(9545) 评论(0) 推荐(0)
摘要: 有了可运行的环境,就需要写一些简单的语句来认识一下Scala,本文没有写那么详细,只是为了方便查看、唤起回忆 (1)变量的定义方法 Scala有两种变量 var val val 类似于 Java 中的 final 变量,一旦初始化之后,不可以重新赋值 注意:在解释器中,可以用一个之前已经使用了的名字 阅读全文
posted @ 2015-08-14 09:58 时空穿越者 阅读(375) 评论(0) 推荐(0)
摘要: 一、常规方式 在某个目录(如:F:\)下新建一个文本文件,命名为:hello.scala 其内容为: println("Hello World!") 那么这个时候该怎么运行这个文件呢? 通过Windows的命令行窗口进入到Scala的安装目录下的bin目录下 输入“scala F:\hello.sc 阅读全文
posted @ 2015-08-13 16:51 时空穿越者 阅读(1333) 评论(0) 推荐(0)
摘要: 一次有人问我为什么要使用JDBC中的PreparedStatement,我说可以“防止SQL注入”,其他的却不能说出个一二三,现在来看看其中的秘密 参考文章: http://www.jb51.net/article/40138.htm http://www.iteye.com/problems/32 阅读全文
posted @ 2015-08-12 15:21 时空穿越者 阅读(394) 评论(0) 推荐(0)