1.在命令行用set查看环境变量

2.set 变量名                              可以查看变量设置情况(系统变量和用户变量的相加)
3.set 变量名=变量取值              设置环境变量
4.set 变量名=   (空)               取消环境变量设置
5.set 变量名=%变量名%;追加内容     追加方式设置环境变量
6.java -verbose    详细列出java装载过程
7.java源文件的名字必须与用public修饰的类名一致,且一个源文件中只能包含一个用public修饰的类
8.set classpath=文件目录              可在其他目录下执行此文件
9.set classpath=c:\myjava;.              .代表当前目录,此时java虚拟机便可访问到要执行的文件
10.classpath后面不能出现空格classpath
11,jdk帮助文档,JAD反编译命令行工具  frontend plus工具
12.x=(x+5)/6  可应用于分页原理
13.while(true)
    {
       x=(x+1)%10;       可以实现0~9之间的循环
    }
14.instanceof       例:"hello" instanceof string  判断是否为类的对象
15.^异或(不同为真)    &两个条件都要与运算
16.<<左移 (最低位补0)         
17.>>右移 (有符号最高位根据原来数据进行补位,如果原来最高位为0,则补0;     无符号则最高位补0)(c语言右移总是在最高位补0,这就是c语言兼容性不好,不跨平台的原因)           
  18.>>>无符号右移(始终在最高位补0)
19.移位适用于byte,short,char,int,long
20.一个数左移n位,就是等于这个数乘以2的n次方,右移n为就是等于这个数除以2的n次方
21.用程序实现2的n次方的算法:y=1<<n;
22.声明数组时不能指定长度如:int a[5];         数组调用前必须初始化
23.空指针异常,如:int [] x;
                                x=new int[100];
                               x=null;
                                x[0]=100;
 这个例子是错误的。
24.java.util.Arrays.sort(数组名);//数组排序(此处为快速排序)
25.System.array.Copy(原数组名,从第n个开始,目标数组,目标数组第n个开始,拷贝n个);//数组拷贝
26.==是比较引用变量的地址是否相同,如:String str1=new String("abc");    String str2=new String("abc");  此时str1==str2是错误的。如果String str3=str1,则此时str3==str1是正确的。
如果是str1.equals(str2)则是正确的,equals是比较内容。
27.匿名调用  new() 类名().方法名()
28.字符串可以直接赋值传递
29.finalize()垃圾回收   System.gc();调用垃圾回收器函数finalize()方法
30.传递对象值会改变
31.对于静态成员变量,我们可以通过类名.静态成员名    对象名.静态成员名 来访问(静态成员还可以在类中被直接赋值)
32.非静态方法可以调用静态方法和非静态方法   静态方法只能调用同类中的静态成员,不能调用非静态成员
33.静态方法不能引用this和super关键字
34.静态代码块定义方式static{}   该块优先执行
35.控制外类创建对象,可将构造函数用private修饰  此时外面是不能创建了,但还需在内部创建一个,此时可以在本类中定义属性处 通过{  static  类名  对象名=new 类名()}来创建   此时可以再创建一个方法供外部访问调用实例对象
但方法必须是静态的,如:public static  类名 getInstance()
                                               {
                                                  return 对象名;
                                                 }
36.凡是不许创建实例对象的大都都是静态方法,就像main()函数一样
37.外部类不能访问内部类的成员,必须通过在方法中创建内部类的对象去调用
38.内部类用static修饰后相当于外部类
39.public classi Outer{
         private int size;
         public class Inner{
           private int size;
                     public  void dostuff(int size)
                    {
                         size++;//形参
                         this.size++;//内部类成员变量
                         Outer.this.size++;//外部类变量
                       }
           }
}
40.java帮助文档注释用/** 。。。。。。。。。。*/注释
紧靠类的前面加上文档注释
其中包含:
       1.title标题(类名)<br>
        2.Description描述类所起作用,类的功能<br>
       3.Copyright版权<br>
          4.Company公司<br>
           5.@author 姓名
         6.@version 版本
41.方法文档注释要紧挨着方法定义之前
需要注释方法的功能说明,方法的描述信息,可以使用类似@的标注参数
生成文档的类的类型必须是用public修饰的
用javadoc生成java帮助文档   javadoc -d 文件名 -版本 -作者 源文件
java只支持单继承,不用许多继承,可以有多重继承
42.子类继承不到父类的私有成员,子类函数也不能访问父类私有成员
43.final类不能被继承,final成员变量不能被赋值 而final方法就不能被覆盖,在子类中就不能被定义
44.final定义的常量可以在构造函数方法中被赋值或者在声明时直接赋值
45.Float.MAX_VALUE代表最大的浮点小数
46.接口中只能定义常量  接口中默认常量为public static final
47.class 类名implements 接口名   接口中方法全为public属性
48.类中实例化接口中方法时必须加上public
49.命令行下dir列出当前目录下文件              del  文件名   (删除文件) 
50.对象名 instanceof 类名        判断对象是否是类的实例
51.默认的equals()方法在父类中总是不相等的
52.类中类和匿名类非常重要
53.throws Exception 为传递异常,抛出异常对象,如果函数名后加上了throws Exception则函数中不需使用try{} catch{}[ ffinally{}]语句
54.在try{}catch{}语句中如果用return,break提前返回,finally{}语句一样被执行,除非采用的是System.exit(0);
54.e.printStackTrace();打印出异常
55.父类中没有抛出的异常,子类在覆盖时不能增添新的异常,除非是异常类本身或异常类的子类,也就是异常类只能比父类少
56.package xxx.xxx1 ;在编译时要将类名.class文件拷贝到xxx/xxx1的目录下
57.可以在编译时用(javac -d . 源文件名)来创建目录结构
58.java在编译时是顺着classpath指定的路径去搜索
59.不同包中源文件调用需要加上包名        如果在源文件开头加上import 包名.*则在调用其他类是不需要加上完整的包名
60.编译时出现找不到源文件时,首先判断类名,包名,classpath
61.protected定义的方法不仅可以被本包种类访问,还可以被其他包种子类访问
62.public定义的方法在所有包中的类均可访问
63.jar命令生成jar文档    如(jar -cvf 文件名.jar 需要压缩的文件)
64.jar -tvf 文件名.jar[>1.txt]   显示压缩文件内容[将显示内容重定向到1.txt中]
65.jar -xvf  文件名.jar    解压文件
66.new Thread().start();表示线程开始执行————准备就绪
67.Thread tt=new Thread();//创建一个线程对象
       tt.setDaemon(true);//设置为后台线程
        tt.start();//启动线程
68.tt.join();l联合线程  此函数必须抛出异常即:
try{
    tt.join()(10000);//后面(10000)代表子线程和主线程合并10s                           
}
catch(Exception e)
{
   
}
69.Tread.sleep(10);线程睡眠10毫秒,此函数也许抛出异常,和tt.join();一样//暂停线程
70.synchronized(任意类型的类成员对象)//实现多线程的独木桥形式(线程同步语句)
{
此处为线程执行代码块;
}
71.public  synchronized void 函数名(){}//线程同步函数,可以达到与同步语句一样的效果。其监视对象为this
72.监视器对象.wait()     监视器对象.notify() //唤醒  notifyAll     //wait()需要try{}catch{}