- 博客(23)
- 资源 (7)
- 收藏
- 关注
转载 java JDOM、DOM、 DOM4J、 SAX四种解析的特点总结
DOM解析: 优点:整个文档树都在内存当中,便于操作;支持删除、修改、重新排列等多功能。 缺点:将整个文档调入内存(经常包含大量无用的节点),浪费时间和空间。 使用场合:一旦解析了文档还需要多次访问这些数据,而且资源比较充足(如内存、CPU等)。JDOM解析: 优点: 1、使用具体类而不是接口,简化了DOM的API。 2、大量使用了Java集...
2018-05-31 17:08:14 992
原创 java XML解析之XPath解析
1.实例化DocumentBuilderFactory对象,该对象帮助创建DocumentBuilder对象,用于解析。DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();//实例化DocumentBuilderFactory对象DocumentBuilder bulider = dbf.newDocumentBuil...
2018-05-31 17:00:56 6570
原创 java XML解析之sax解析
1.一个类(例如MyDefaultHandler)继承DefaultHandler类2.重写五个方法:startDocument()//该方法第一个执行,只执行一次startElement(String uri, String localName, String qName, Attributes att)//该方法会获取每一个标签characters(char[] ch, int start, ...
2018-05-31 16:41:55 214
原创 Java xml解析之JDom解析
该解析方法与dom4j解析 比较类似同样需要使用第三方jar包,大致有以下步骤:1.创建SAXBuilder 对象。SAXBuilder sax = new SAXBuilder();2.通过SAXBuilder 对象创建文档对象Documentdoc=sax.build(Thread.currentThread().getContextClassLoader().getResourceAsStr...
2018-05-30 16:44:59 276
原创 java xml解析之DOM4J解析
DOM4J解析大致分为几步:1.创建SAXReader 对象。SAXReader sax = new SAXReader();2.通过SAXReader对象使用read()方法读取文档。Document doc=sax.read(Thread.currentThread().getContextClassLoader().getResourceAsStream("MyXML/Student....
2018-05-30 16:02:17 287
原创 java xml解析之dom解析
java语言本身支持DOM,可以直接查找属性与 子节点,过程大致如下:1、通过工厂类创建对象,可以通过该对象创建文本对象 DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();2.通过工厂类的对象(dbf )创建文档对象,该对象可以映射操作xml文件DocumentBuilder docum = dbf.newDocum...
2018-05-30 14:33:02 196
原创 java XML 约束
分为:DTD约束Schema约束: 1.是基于DTD的替代者 2.描述XML文档的结构使用:1.创建 XML schema File 文件<?xml version="1.0" encoding="UTF-8"?><schema xmlns="http://www.w3.org/2001/XMLSchema" targetNamespace="http://ww...
2018-05-28 19:42:59 437
原创 java 关于properties文件的使用
先定义一个文件:实现对文件中资源的访问:方法一:import java.io.IOException;import java.io.InputStream;import java.util.Properties;public class Propertiess { private static Properties ps = new Properties(); static { In...
2018-05-28 17:04:25 591
原创 java关于注解的使用
一:注解的基本概念Java 注解就像修饰符一样,可以用于从java代码中抽取文档、跟踪代码中的依赖性或者在编译时做检查。注解可以被应用在包、类、方法、成员变量、参数和本地变量的声明中。注解的工作原理就是,先使用注解修饰java代码,然后另一块叫做注解处理器 的代码会解析这段注解和被修饰的代码并做相应的处理。二、JDK内置的标准注解Java SE中内置了三个标准注解,在java.lang中...
2018-05-28 15:55:40 326
原创 java 反射机制实现对属性、方法、构造器操作的常用方法
先创建一个类,类中对属性以及方法设置了各种访问权限public class Student { private int id; String name; protected boolean sex; public float score; Student(){ } public Student(int id, String name, boolean sex, float...
2018-05-27 19:47:34 142
原创 java获取反射机制的三种方式
java 获取反射常使用的三种方式:1.通过new对象实现反射机制2.通过路径实现反射机制3.通过类名实现反射机制例子:建立一个学生类:public class Student { private int id; String name; protected boolean sex; public float score; }获取反射机制public class Get { //获取...
2018-05-26 23:59:44 18819 3
原创 java IO之递归实现文件夹(目录)的拷贝
将一个文件夹(目录)拷贝到另一个文件夹(目录)可以分为文件的拷贝和文件夹(目录)的创建public class FileTools {//拷贝文件的方法 public static void copyfile(File sour, File tar) throws IOException { BufferedInputStream bis = new BufferedInputStream(ne...
2018-05-25 20:28:08 351
原创 java IO主要字节流和字符流,以及继承关系
1.字节缓冲区的使用(提高效率,可以保护磁盘)(主要使用FileInputStream 类和FileOutputStream 类)FileInputStream in= new FileInputStream("e:\\source.txt"); FileOutputStream out = new FileOutputStream("e:\\target.txt"); byte[]...
2018-05-24 14:10:02 2135
原创 java方法重写中声明异常的原则
子类声明异常的范围不能超过弗雷声明的范围: 1. 父类没有声明异常,子类也不能; 2.不可以抛出原有方法抛出异常类的父类或者上层类 3.抛出的异常类型数目不可以比原有方法抛出的还多(不是指个数)例如:import java.io.FileNotFoundException;import java.io.IOException;import java.text.ParseExcep...
2018-05-21 21:32:14 1638
原创 java中String类的substring的小细节
String类的substring()方法实现返回一个字符串,该字符串是此字符串的子字符串。根据源码可以看出如果当形参为0时返回的仍然是但前的字符串对象,并没有创建新的对象:public String substring(int beginIndex) { if (beginIndex < 0) { throw new StringIndexOutOfBo...
2018-05-21 16:38:40 343
原创 java的多态与回调
在java中实现回调(CallBack)是通过多态实现的,通过一个方法动态绑定到不同的实现过程。例如,在做餐时,买菜、洗菜等过程都已经固定,而做菜的形式不同,可能做鱼、米饭、面条等等,这个时候我们可以将做菜的方法写入代码中,在不同的做菜需求时,通过类的继承实现多态的动态绑定:public class Cook { public void cook() { System.out.printl...
2018-05-21 16:04:54 178
原创 java多态与回调
在java中实现回调(CallBack)是通过多态实现的,通过一个方法动态绑定到不同的实现过程。例如,在做餐时,买菜、洗菜等过程都已经固定,而做菜的形式不同,可能做鱼、米饭、面条等等,这个时候我们可以将做菜的方法写入代码中,在不同的做菜需求时,通过类的继承实现多态的动态绑定://主类public class MyMian { public static void dinner(Cook c)...
2018-05-21 15:59:44 381
原创 java接口随jdk版本更新的变化
jdk1.7以及以前: 可声明静态常量属性和抽象方法: public interface int1 { static final int x=0; int y=0;//默认static final public abstract void Test1(); abstract void test2(); void test3() ;//默认 public...
2018-05-21 15:01:38 751
原创 java静态初始化块
在加载类之前执行,public class Test { private static int x; private int y; private int z; static { System.out.println("我是静态代码块"); x=100; //y=100;//不能调用普通成员 } public static void main(String[] args) { Test ...
2018-05-20 20:49:11 110
原创 java中的this关键字
this 的本质是“创建好的对象的地址”,指的是当前建好的对象:注意:不能用于static方法第一种用法,区分二义性:public class Test { private int x; private int y; Test(int x,int y){ this.x = x;//变量名相同,区分形参和实参 this.y = y; } }第二种方法,使用this调用构造器,必须位于第一句p...
2018-05-20 20:41:00 966
原创 java 带标签的continue实现类似goto的语句
在java程序中,出于安全性考虑没有将goto的语法写入java中,但却保留了关键字。然而提供了一种带标签的continue实现类似的goto,但是适用范围有限。一个列子,打印100以内所以质数:public class TestBreak { public static void main(String[] args) { other:for(int i=1;i<100;i++) { ...
2018-05-20 20:28:24 222
原创 集合类TreeSet中关于Comparable接口与Comparator接口实现排序
实现自定义的排序常用有两种方法一、实体类 实现java.lang.Comparable接口且重写compareTo()方法二、业务排序类 实现java.util.Compartor接口且重写compare()方法第一种方法举例: 实体类为学生类 属性有学分,学号,姓名,该类实现了Comparable接口并重写compareTo()方法 本例按照学分降序排列public class Stu...
2018-05-15 16:38:19 484
原创 JAVA GUI界面编程实现树节点的事件监听
一、创建滚动条容器,将该容器添加到当前框架。(因为树模型需要在滚动条中才能显示完全)JScrollPane scrollPane = new JScrollPane(); 二、创建树模型JTree tree = new JTree(); DefaultMutableTreeNode dft =new DefaultMutableTreeNode("Jtree") { { DefaultM...
2018-05-14 21:31:30 3493
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人