Java基础知识
文章平均质量分 62
OnlyQi
我是一只蜗牛
展开
-
Java中的Collection介绍
https://docs.oracle.com/javase/tutorial/collections/interfaces/index.htmlCollection可以说是把多个元素组合在一起的一种对象。Java中的collection分为5大类。对于这6类分别有对应的interface:set/list/queue/deque/map interfaces。These interfaces...原创 2019-08-18 07:44:39 · 3823 阅读 · 0 评论 -
java中的nested-class和inner-class
参考了这篇文章:http://docs.oracle.com/javase/tutorial/java/javaOO/nested.htmlnested-class和inner-class的区别:Nested classes are divided into two categories: static and non-static. Nested classes th转载 2013-01-28 13:49:30 · 1973 阅读 · 0 评论 -
logback for HTTP-access log functionality
http://logback.qos.ch/access.html转载 2012-12-20 21:25:17 · 1730 阅读 · 0 评论 -
log4j简介(一)
其实最好的入门方法就是去看:http://logging.apache.org/log4j/1.2/manual.html这里我将这篇入门文章的关键点提出来,让大家快速明白log4j中的基础概念。首先log4j是干嘛的:Log4j allows the developer to control which log statements are output with arb原创 2011-04-26 17:17:00 · 921 阅读 · 0 评论 -
Mastering the java CLASSPATH
非常好的一篇文章,解释了classpath的一些常识问题。原文http://kevinboone.net/classpath.html几个常见的关于classpath的问题,大家可以思考一下,并在下面的文章中寻找答案。1,为什么在使用jar时,为什么需要在classpath中指定 -classpath /root/lib/1.jar? 可以让java class loade转载 2012-12-26 16:46:28 · 1204 阅读 · 0 评论 -
slf4j
slf4j与log4j的区别:http://stackoverflow.com/questions/4516932/difference-between-slf4j-and-log4j下面是slf4j的入门手册:http://www.slf4j.org/manual.htmlthe first baby step with slf4j and logback转载 2012-12-20 15:12:21 · 853 阅读 · 0 评论 -
StAX
Streaming API for XML (StAX) is an application programming interface (API) to read and write XML documents, originating from the Java programming language community.下面是IBM的关于StAX的文章,大家可以参考一下。htt原创 2012-08-06 21:07:43 · 1057 阅读 · 0 评论 -
JAXB Architecture
两个很简单的入门例子:http://www.vogella.com/articles/JAXB/article.htmlhttp://www.mkyong.com/java/jaxb-hello-world-example/ 更详细的描述JAXB Architecturehttp://docs.oracle.com/cd/E17802_01/webservices/we原创 2012-11-14 14:44:55 · 634 阅读 · 0 评论 -
Makepp or Make++
Makepp (short for Make-plus-plus, or make++) is a tool for solving exactly this problem. It is an improvement on themake program, a standard tool that has been around for many years. It relies eithe转载 2012-10-20 09:25:02 · 1954 阅读 · 0 评论 -
Apache Zookeeper
Zookeeper是一个分布式协调系统,在各种NOSQL数据库和多个开源软件中被广泛使用。例如在Hadoop 2.0中就使用了Zookeeper:HDFS 2.0的Namenode分为Active NN和Standby NN,其中SNN是ANN的热备。ANN和SNN使用共享存储来共享数据,但这不能实现自动的failover。而Zookeeper会不断接收到他们的心跳信息,当ANN发生故障时,选...原创 2012-10-15 15:30:09 · 807 阅读 · 0 评论 -
JMX简介
参考文章:http://download.oracle.com/javase/tutorial/jmx/index.htmlThe Java Management Extensions (JMX)是java标准平台的一部分。最早出现在J2EE中,就是实现一些企业级的管理。The JMX technology provides a simple, standard way of原创 2011-04-26 17:13:00 · 997 阅读 · 0 评论 -
泛型generic
为什么要使用泛型作用一思考一个简单的问题:在java中一切都是对象,因此例如ArrayList也是一个对象。但由于必须支持ArrayList用来存各种各样的数据,因此ArrayList中存储的对象必然只能是基类Object。在这种情况下,编译时无法对其中存储的对象做任何检查,但运行时可能由于其中的对象不是认为的那种而出现运行时错误,因此这是不安全的。而泛型出现后:new ArrayLi...原创 2012-08-28 15:53:40 · 1111 阅读 · 0 评论 -
XML DOM Parser
import javax.xml.parsers.DocumentBuilderFactory;import javax.xml.parsers.DocumentBuilder;import org.w3c.dom.Document;import org.w3c.dom.NodeList;import org.w3c.dom.Node;import org.w3c.dom.El转载 2012-08-27 15:30:36 · 1350 阅读 · 0 评论 -
StringBuffer and String Builder
StringBufferA thread-safe, mutable sequence of characters. A string buffer is like a String, but can be modified. At any point in time it contains some particular sequence of characters, but the原创 2012-08-31 16:05:33 · 732 阅读 · 0 评论 -
关于如何看代码
今天本来想抽时间好好看看项目,因为我现在遇到的问题就是看代码的时候各种各样的类,来回跳转,一会儿就晕了。于是,采用两种方法改变看代码的方式: 1、从配置文件入手。 Guru告诉我,项目里面有大量的配置文件(基本上都是xml)。很明显,代码需要将这些配置文件读出来以后处理。而这些xml中有一些关键点(表现为节点),比如project和task等。按照我们项目的逻辑,project和t原创 2011-04-23 09:50:00 · 926 阅读 · 0 评论 -
HashMap, HashTable and HashSet
不同点:HashMap基本上等同于HashTable,除了:1,HashMap不是线程安全的。2,HashMap允许key和value为空值,而HashTable的key和value都不允许为空。HashSet不是key-value结构。相同点:1,HashMap, HashTable和HashSet都不允许重复值。原因很简单:如果输入值是重复的,那原创 2013-01-30 17:39:56 · 853 阅读 · 0 评论 -
java中的容器类
本文是从《java程序员面试宝典》摘抄出来的。(1) java容器类一共有两种主要类型: collection和map。collection和map的区别在于每个“槽”所存储的元素个数不同。collection类型中,每个“槽”只有一个元素;map中,持有key-value关联,像一个小型数据库。所有的java容器类都可以自动调整自己的尺寸。(2) 各自旗下的子类关系如图。转载 2013-01-28 14:57:03 · 1352 阅读 · 0 评论 -
Java中的annotation
Annotations, a form of metadata, provide data about a program that is not part of the program itself. Annotations have no direct effect on the operation of the code they annotate.Annotations have a ...原创 2019-08-18 07:11:13 · 324 阅读 · 0 评论 -
Java类中的常用关键字介绍
public class Bicycle { private int cadence; //field private int gear; private int speed; static final int test = 1; public Bicycle(int startCadence, int sta...原创 2019-08-17 21:13:24 · 736 阅读 · 0 评论 -
Quartz Quick Start Guide
<br />And also learned this today:<br />http://www.quartz-scheduler.org/docs/quick_start_guide.html<br />更详细的是:<br />http://www.quartz-scheduler.org/docs/1.x/tutorial/index.html<br />更更详细的是官网的documentation了,啥都有。<br /> <br />一个最简单的使用scheduler的例子:<br /> <br原创 2011-04-23 10:00:00 · 848 阅读 · 0 评论 -
A great introduction of Apache Camel
http://java.dzone.com/articles/open-source-integration-apache总得来说Apache camel是一个integration tool,它通过:1,内置多种数据转换格式,例如CSV, JSON, XML等,甚至Zip file等都可以很容易的translate to POJO,很适合用于整合公司内各种异构数据源。2,内置多种EI...原创 2014-11-13 14:10:35 · 819 阅读 · 0 评论 -
POJO
原文:http://en.wikipedia.org/wiki/Plain_Old_Java_ObjectPOJO means Plain Old Java Object. The name is used to emphasize that a given object is an ordinary Java Object, not a special object.The翻译 2012-06-25 18:42:24 · 856 阅读 · 0 评论 -
javax.script package
The JavaTM Scripting APIs a scripting language indepedent framework for using script engines from Java code.简单的说,javax.script使得在java中使用其它脚本语言成为可能。例如在java代码中运行javascript代码。很有意思吧?注意虽然javascript只能在原创 2013-02-07 11:44:49 · 4174 阅读 · 0 评论 -
final关键字
final关键字可以用在3个地方:1,定义变量时public final double radius;表示声明了一个常量。常量一旦被初始化则不能再改变。对于基本类型来说其值不可变,对于对象来说,其引用不可变。但是这里需要注意的是,虽然引用的对象不可变,但是引用的对象的内容是可变的。我们在下面会看到例子。这里顺便8一句题外话:String s = "abc";s=转载 2013-01-17 15:27:15 · 617 阅读 · 0 评论 -
Java堆和栈的区别
先来说一个看似无关的问题:你是怎么操作一个java对象的?大家也许听过一句话,在java中一切都是对象。虽然我们把所有的东西都当做对象来对待,但是直接操作的不是对象本身,而是对象的引用,也就是reference。下面这个比喻很不错:You might imagine a television (the object) and a remote control (the refe转载 2012-03-11 19:17:16 · 1300 阅读 · 0 评论 -
Java IO 概述
Streamjava.lang.Object-> java.io.inputstreamThis abstract class is the superclass of all classes representing an input stream of bytes.也就是说,这是一切io操作的都是stream。最常见的subclass就是FileInputStream。原创 2011-04-23 10:02:00 · 699 阅读 · 0 评论 -
反射reflection
反射的定义在计算机领域中的反射和光学上的反射在概念上有类似之处。正是因为光在镜面发生了反射,人们才能在镜子中看到自己。而计算机领域的反射也是如此--因为有了反射,程序可以在运行时,通过反射看到自己,审视自己。不同的是人们不能改变自己在镜子中的摸样,而计算机程序不仅可以看到自己,还能改变自身的行为。下面是两种反射的定义:1, A program that can analyze th原创 2011-04-26 17:29:00 · 1004 阅读 · 0 评论 -
java子类和父类的初始化过程
实例化子类时,会从最上层的父类开始一层层向下调用父类的默认构造函数。所谓默认构造函数,就是不带参数的构造函数。如果父类没有无参构造函数,则子类必须显式的用super调用父类的某一个带参构造函数。class X { Y b = new Y(); X(){ System.out.print("X"); }}class Y { Y(){ System.out.p原创 2013-01-31 17:15:50 · 1577 阅读 · 0 评论 -
java异常
------------------------------------------------------------------------------什么是异常在java程序运行时,常常会出现一些非正常的现象,java需要显式的告诉别人程序出问题了,此时就会抛出(throw)错误或异常。java程序中所有抛出的非正常现象都必须从Throwable派生而来。类Throwable有两个直转载 2013-01-16 18:47:00 · 870 阅读 · 0 评论 -
java中的hashmap和hashcode
关于java中hashcode()的说明,wiki里讲的非常好:http://en.wikipedia.org/wiki/Java_hashCode%28%29HashMap是java的一个常用类。它和java中的所有collection一样,都支持泛型:public HashMap buildMap(Student[] students) { HashMap map转载 2012-08-29 22:56:41 · 3343 阅读 · 0 评论 -
SAX--Simple API for XML
SAX与DOM最大的不同是,SAX以流的形式读取XML,而不是一下把DOM load到内存中,因此SAX特别适合用来读取超大XML文件。使用起来也很简单,本质上就是SAX在遇到XML中的Element的时候会自动调用一些方法,例如下例中的startElement,endElement,characters。我们仅需要在这些方式中用代码实现希望对XML的处理。直接看例子吧:原创 2012-08-06 21:09:26 · 1073 阅读 · 0 评论 -
Runtime class
前面谈到了用Process类调用外部程序的问题时,说到了Runtime,所以今天我就看一点相关的东西。Every Java application has a single instance of class Runtime that allows the application原创 2011-07-15 15:39:58 · 972 阅读 · 0 评论 -
Apache commons project
<br />官网:<br />http://commons.apache.org/<br /><br />The Commons is an Apache project focused on all aspects of reusable Java components.原创 2011-04-26 17:21:00 · 584 阅读 · 0 评论 -
log4j简介(二)
继续介绍appender和layout。appenderLog4j allows logging requests to print to multiple destinations. In log4j speak, an output destination is called an appender. Currently, appenders exist for the console, files, GUI components, remote socket servers, JMS, NT Even原创 2011-04-26 17:18:00 · 881 阅读 · 0 评论 -
Apache commons IO
<br />Apache commons IO 官网:<br />http://commons.apache.org/io/<br />API doc:<br />http://commons.apache.org/io/api-release/index.html<br /> <br /> <br />void org.apache.commons.io.IOUtils.closeQuietly(InputStream input)<br />Unconditionally close an InputS原创 2011-04-26 17:15:00 · 913 阅读 · 0 评论 -
java.util.properties
<br />顺便今天看了一个类properties<br />很简单实用。是hashtable的一个子类。<br />Properties appProperties = new Properties();<br />File appConfigFile = new File();<br />FileInputStream appConfigStream = null;<br /> try {<br /> appConfigStream = new FileInputSt原创 2011-04-26 17:11:00 · 757 阅读 · 0 评论 -
Collection (part 1)
<br />基本概念<br />首先说一下collection的本质。<br />本质上这东西就是实现了java.uil.collection接口的泛型类。<br />(在后面的collection framework中看到,其实还有map接口)<br />The fundamental interface for collection classes in the Java library is the Collection interface.<br />因此如果想实现自己的数据结构,通过impleme原创 2011-04-26 17:09:00 · 798 阅读 · 0 评论 -
一点JavaBeans的入门小知识
<br />首先,JavaBeans出现的目的:<br />Visual Basic is clearly optimized for a particular kind of problem—UI-intensive(UI驱动的) Windows programs. The JavaBeans technology was invented to make Java technology competitive in this arena. It enables vendors to create Vis原创 2011-04-26 17:08:00 · 659 阅读 · 0 评论 -
对于抽象类的认识
如果一个concrete类Wrapper 继承了一个抽象类AbstractWrapper ,且这个子类override了其中的一个方法isCorrect()。private final AbstractWrapper Wrapper = new Wrapper();Wrapper.isCorrect() 调用的是子类的方法,而Wrapper.stop()等调用的其他方法是调用的抽象类的方法。实际上,如果一个类中有一个方法是抽象的,那么这个类就是抽象的。但是如果类被定义为抽象的,在这个类中,即可以有抽象方法,原创 2011-04-26 17:35:00 · 786 阅读 · 0 评论 -
Log4j简介(三)
<br />今天具体说说log4j的控制日志输入和涉及的两个概念:level和filter。<br /> <br />首先来看level和filter的定义,接着看它们是如何在配置文件中使用的。<br /><br /> <br />level:<br />level就是记log时的severity级别。在之前的blog中已经做了介绍。现在看一个自定义的gmiLevel class的例子:<br />public class GMILevel extends Level {<br />//用于自定义level原创 2011-04-26 17:20:00 · 845 阅读 · 0 评论