【知识点】目录在Java中作为一种特殊文件,即文件名的列表,通过File所提供的的方法,可得到文件的目录和面熟的信息(包括名字,路径,长度,可读,可写等),也可以生成新的文件,目录,修改文件和目录,查询文件属性,重命名文件或删除文件
【知识点】文件操作中,经常需要的是随机访问,Java中的RandomAccessFile类中提供了随意访问文件的功能
它继承了Object类,用DataInput和DataOutput接口来实现,接口中定义了从流中读/写基本类型的数据方法
因此可以随意读/写数据文件的记录。
【知识点】流最早从C语言中引入的,其可以看成是一个流的数据缓冲区,数据从数据源方向经过缓冲区流向数据的目的地,在传送的过程中,其传送方式是串行的,在Java中的java.io包中定义了Java中最常见的接口与类,其中包括两个最基本的流的抽象类,它们分别是OutputStream 与 inputStream,其余的流分别从这两个基本类中继承而来。
【知识点】一个程序在编译和运行时出现的错误我们统一称之为异常
一个合理的应用程序不能截获的严重的问题属于错误(Error)。
【知识点】Java语言中,错误类的基类是java.lang.Error,异常的基类是java.lang.Exception
两者都是java.lang.Throwable的子类,因此Error和Exception自身及其子类都可以作为throw的使用对象。
【知识点】final,finally,finalize的区别?
Fianl:
修饰符(关键字)如果一个类被声明为final,意味着它不能再派生新的子类,不能作为父类被继承,
因此一个类不能被声明为abstract,又被声明为final。
将变量或方法声明为final,可以保证他们使用中不被更改,被声明为final的不变阿玲必须在声明时给定处置,而以后的引用中只能读取,不可修改,被声明为fianl的方法也同样只能使用,不能重载。
Finally:
在异常处理是,提供finally块来执行清除操作,如果抛出一个异常,那么相匹配的catch语句就会执行,然后控制就会进入finally块(如果有的话)
Finalize:
是方法名,Java技术允许使用finalize()方法在垃圾收集器将对象从内存中清除以前做必要的清理工作,这个方法是在垃圾收集器在确定了,被清理对象没有被引用的情况下调用的。
Finalize是Object类中定义的,因此,所有的类都继承了它,子类可以覆盖finalize()方法,来整理系统资源或者其他清理工作。
【知识点】run()方法是线程的执行体
【知识点】在执行start();之前所执行的两个run();知识单纯的通过虚拟机进行调用该方法,
Start()执行后会将该线程至于就绪状态,等待系统分配时间片段给该线程去执行线程任务。
【知识点】suspend可以挂起一个线程,就是把这个线程暂停了,它占着资源,但不运行
用resume()是恢复挂起来的线程,让这个线程继续执行下去。
【知识点】java Thread中,run方法和start方法的区别?
Start方法:用start来启动线程,是真正实现了多线程,通过调用Thread类的start()方法来启动一个线程
这时此线程处于就绪(可运行)并没有运行,一旦得到CPU时间片,就开始执行run()方法,但要注意的是
此时无需等待run()方法执行完毕,即可继续执行下面的代码。所以run()方法并没有实现多线程,
Run方法:run()方法只是类的一个普通方法而已,如果直接调用run方法,程序中依然只有主线程这一个线程,其程序执行路径还是只有一条,还是要顺序执行还是要等待run方法执行完毕后才可以继续执行下面的代码。
【知识点】wait方法和sleep方法很类似,都是出于等待状态,但是不同的是,wait方法执行后hi释放锁对象,
所以此段代码中的wait方法后面的语句不会被执行,而是一直处于等待状态中。
【知识点】线程生命周期:新建状态,可运行状态,运行状态,阻塞状态,终止状态。
【知识点】在主线程中启动新线程后,新线程处于就绪状态,那么新线程对象中的run()方法被系统执行是,视为已经即进入执行新线程的内容。
【知识点】线程的睡眠要调用Thread的sleep方法,传入参数为一个long类型的毫秒值,
打断睡眠程序会抛出InterrupedExceprion异常
【知识点】start()用来启动一个线程,当调用start方法后,系统才会开启一个新的线程,劲儿调用run()方法来执行。
单纯的调用run()方法就跟调用普通方法是一样的,已经失去线程的特性了
因此,在启动一个线程的时候,一定要使用start() 而不是run()。
【知识点】线程被创建后不可能立即开始运行,不同优先级的线程间是抢先式的.
即使线程因为抢先而停止也不一定就进入可运行队列的前面
而同级别的线程是轮换式的,它的运行可能就是因为轮换
而它因抢占而停止后只能在轮换队列中排队而不能排在前面。
【知识点】sleep:导致此线程暂停执行指定时间
Stop:这个方法将中航智所有未结束的方法,包括run方法
Wait:当前正在被服务的线程需要睡一会,醒来后即系被服务。
XML规则
【知识点】XMl命名规则:可以包含字母,数字,以及其他字符
名称不能以数字或者标点符号开始,名字不能以字符“XML”开始,名称不能包含空格
可以使用任何名称,没有保留的字词
【知识点】EMPTY表示元素不能包含文本,也不能包含子元素
#IMPLIED属性可以没有值
#REQUIRED 属性必须有值
【知识点】DTD不遵循XML语法 DTD不支持命名空间 DTD不可拓展
【知识点】定义XMl文档时,通过encoding属性来指定字符集
【知识点】定义xml文件是通过命名空间来避免重复的命名。
【知识点】Java解析xml文件四种方式:SAX,DOM,JDOM,DOM4J
【知识点】xml文档注释符号是:<!-- --!>
【知识点】DOM是独立于开发语言和平台的,因此使用Visnal Basic ,java,C++等开发工具使用的DOM编程API是一样。
XML文档通过load方法被装在进内存后,在内存中形成一个DOM文档对象模型树
通过DOM API,软件开发人员可以控制XML文档的结构和内容
SAX解析文档需要按照顺序,DOM可以随意
【知识点】XML语法规则:
必须有XML声明语句
是否有DTD文件
注意大小写
给属性值加引号
所有标识符必须有相应的结束标识
所有的空标识符也被关闭
【知识点】在XML中,单引号和双引号都可以使用在属性上
【知识点】二进制数左移一位相当于数为上的数值乘2,右移一位相当于位数上的数值除以2.
【知识点】&位运算的规则是都为1则是1,只要有一个数的当前为是0,则结果为0
【知识点】每位16进制数是需要四位二进制数来表示。
【知识点】Oracle中连接字符串使用“||”符号
【知识点】Oracle中使用concat连接字符串
【知识点】删除表中的所有数据,DELETE FORM 表名
【知识点】属于Java接口的有Statement,Collection,ResulSet
【知识点】DriverManager是一个关于JDBC的数据库驱动类
【知识点】数据库连接池可以提高系统性能,与查询语句的速度没有关系
Sevlet
【知识点】ServletConfig接口默认是从GenericServlet实现的