2016-03-15 demon7452
Java面试题总结(其一) 1、sleep和wait方法的区别 这两个方法来自不同的类分别是Thread和Object 最主要是sleep方法没有释放锁,而wait方法释放了锁,使得其他线程可以使用同步控制块或者方法。 wait,notify和notifyAll只能在同步控制方法或者同步控制块里面使用,而sleep可以在 任何地方使用 synchronized(x){ x.notify() //或者wait() } sleep必须捕获异常,而wait,notify和notifyAll不需要捕获异常 继续阅读 »
2016-03-04 demon7452
Java面试总结-线程 1、创建一个线程 创建线程主要分为两个方法 implements Runnable接口并实现run()方法,然后由Runnable对象创建一个Thread对象,调用Tread的start()方法启动线程。 extends Thread 构建一个Thread类的子类,复写run()方法。该方法目前已不再推荐,应该从运行机制上减少需要并行运行的任务数量。 警告:不要调用Thread类或Runnable对象的run方法。直接调用run方法,只会执行同一个线程中的任务,而不会启动新线程??。应该调用Tread.start方法,这个方法将创建一个执行run方法的新线程。 ``` /** * 创建线程的两种方式 继续阅读 »
2016-11-01 demon7452
Java面试题收集整理 来源:骆昊 链接: blog.csdn.net/jackfrued/article/details/44921941 1、面向对象的特征有哪些方面 面向对象的特征主要有以下几个方面: 继续阅读 »
2015-09-10 veryyoung
日志记录在程序开发中是很重要的一个环节,日志在开发、调试、问题定位、问题分析中都起着很重要的作用。 Java生态圈提供了很多日志工具供开发者选择。 more 先明确下另个概念: 日志系统:日志系统是日志的具体实现。Java日志系统比较丰富,常用的有Log4j、java.util.Logging、Logback。 日志框架:为了解决多个日志系统的兼容问题,日志框架应运而生。主流的日志框架有commons-logging和SLF4J。 继续阅读 »
2017-06-24 UFreedom
JVM
Java 虚拟机结构 根据 Java 虚拟机规范,Java 的基本结构可归纳为如图所示: 继续阅读 »
2013-12-30 blademainer
先来看一个例子,代码如下: java public class Test { public static void main(String[] args) { String str = "abc"; String str1 = "abc"; String str2 = new String("abc"); System.out.println(str == str1); System.out.println(str1 == "abc"); System.out.println(str2 == "abc 继续阅读 »
2015-11-05 Brian Li
在项目中使用的还是java1.7比较多,1.8平时业余项目用用,学习下,毕竟新版本始终会代替旧版本的.在mac上推荐使用jenv工具来管理多java版本, 能够随意切换. 官方网站http://www.jenv.be/{:target="_blank"},还有个是http://jenv.io/{:target="_blank"} 国人开发的算是升级版本把,能够通过该工具安装java,ant,maven,tomact.对于我来说,使用jenv足够了. 继续阅读 »
2015-05-07 Eric Wang
LTP
JDK:java version "1.8.0_31" Java(TM) SE Runtime Environment (build 1.8.0_31-b13) Java HotSpot(TM) 64-Bit Server VM (build 25.31-b07, mixed mode) OS:win7 64bit cmake:V2.8.12/V3.2.2 LTP:V3.2.0 LTP4J:V1.0 Microsoft VS C++:V2010 编译LTP4J.jar 下载Ant ltp4j的源码使用ant进行编译,首先需要下载ant,点我下载 配置Ant环境变量 我的电脑-->属性-->高级系统设置-->环境变量 新建A 继续阅读 »
2015-09-11 biezhi
```java public class ProgressBar { private double finishPoint; private double barLength; public ProgressBar(){ this.finishPoint = 100; this.barLength = 20; } public ProgressBar(double finishPoint, int barLength){ this.finishPoint = finishPoint; this.barLength = barLength; } /** * 显示进度条 * @p 继续阅读 »
2016-04-11 Renfei Yu
Push 推送技术说明 [TOC] Java NIO 使用说明 参考资料 Java NIO Tutorial 简介 Java NIO (New IO) is an alternative IO API for Java (from Java 1.4), meaning alternative to the standard Java IO and Java Networking API's. Java NIO offers a different way of working with IO than the standard IO API's. 继续阅读 »