1、css样式中的类标签中的值不能以数字和下划线开头,必须为字母;
2、try中的return语句调用的函数先于finally中调用的函数执行,也就是说return语句先执行,finally语句后执行,所以,返回的结果是2。Return并不是让函数马上返回,而是return语句执行后,将把返回结果放置进函数栈中,此时函数并不是马上返回,它要执行finally语句后才真正开始返回。如果finally中也有return语句的话,也压入栈中,最后结果只输出栈顶位置的值。例子如下:
public class Test {
public static voidmain(String[] args) {
System.out.println(newTest().test());;
}
int test()
{
try
{
return func1();
}
finally
{
return func2();
}
}
int func1()
{
System.out.println("func1");
return1;
}
int func2()
{
System.out.println("func2");
return2;
}
}
-----------执行结果-----------------
func1
func2
2
结论:finally中的代码比return和break语句后执行
3、javascript 中的函数名称关键字(如:select....)不能取。
4、当数组为空时,不能使用数组元素或其属性,如( String[] a = null , a[0]、a.length .........都会抛出异常)。
5、com.genuitec.eclipse.wizards_8.5.0.me201003052220.jar 在这jar包下修改servlet和jsp模板。
6、ArrayList:采用数组形式进行存储数据,可以按序号直接找到数据,数据插入涉及到数组元素移动等内存操作,所以数据插入慢,而数据索引块。
LinkedList:采用双向链表进行数据存储,索引数据需要向前或向后遍历,但插入数据只需记录本项的前一项或后一项即可,所以数据插入块,数据索引慢。
Vector:它和ArrayList基本一样,只是由于它使用了synchronized方法,所以线程安全,但是效率较ArrayList差。
7、Synchronized关键字
(1)方法声明时使用:Publicsynchronized void method(){}
(2)某一代码块使用,其后括号是变量:
Public synchronized void method(){
Synchronize(a){};
}
(3)某一代码块使用,其后括号是对象:
Public void run(){
Synchronized(this){};
}
8、多态
定义:指允许不同类的对象对同一消息做出响应
多态存在三个条件:要有继承、要有重写、父类引用指向子类对象
作用:消除类型之间的耦合关系
9、String、StringBuffer、StringBuilder
String是不可变对象,每次对String类型进行改变时都会生成一个新的String对象。
StringBuffer是可变字符序列,每次对StringBuffer对象本身进行操作,不是生成新的对象,而是改变对象引用
StringBuilder和StringBuffer基本一样,只是前者不是线程安全的,建议在单线程操作时使用StringBuilder。
10、Java中,在调用子类构造方法时,系统会首先自动调用父类无参构造方法,如果父类没有无参构造方法,那么就要自己在子类的构造方法中通过super(参数)方法调用父类有参构造方法。
11、Java环境变量名:JAVA_HOME、CLASSPATH、Path
12、解析XML的方式:DOM解析(在内存中创建一个DOM树,能够随机访问文件内容,也可以修改),SAX解析(线性解析,无法随机访问文件内容,也不能修改)DOM解析要先用SAX解析创建DOM树。