java易错知识点

   在java学习中,有很多细节的知识点需要常记忆,我通过测试查漏补缺.

   一个类的结构如下:

public class 类名称{

     [static]{     //既可以是静态初始化块,也可以是实例化初始化块

                初始化块

        }

     public/protected/private/默认  [static] [final] 属性;

     public/protected/private/默认  类名(){  //构造方法 

         ...........................................

     }

     public/protected/private/默认  [static] [final] [abstract] 普通方法名(){

     .....................................

     }

}

说明: (1)静态初始化块方法是在类被JVM加载时就执行的语句,无论new几个对象,此方法都只能加载一次,而实例化初始化块在每次实例化一个对象时执行一次,他是在任何父类构造器调用之后,子类构造器调用之前执行.

          (2) 如果类中有main方法,访问修饰符(public/protected/private/默认)和可选修饰符([static] [final] [abstract])之间可以互换位置;返回类型只能为void,参数名可以随意命名,main()格式如下:

           public static void main(String[ ] args) {   }或

           static  public  void main(String[ ] args) {   } 或

           public static void main(String[ ] hellos) {   } 或

           public static void main(String  args[ ]) {   }

     引用类型主要包括:类(所有类),数组和接口(接口默认是抽象的,可以不用关键字abstract声明,接口中的每一个方法都默认是抽象的,也不需要使用关键字abstract来声明,接口中的方法默认是public,也可以不写public任然是public的).

     产生对象有四种方式:

(1)new;

(2)对象克隆;

(3)反射(通过类型名获取Class 对象 Class c=Student.Class,通过对象名获得Class对象 Class c=new Student().getClass(),通过类型名的字符串形式获取class对象,Class c=Class.forName("类的全称"))

(4)对象反序列化(把输入的二进制流转成对象)

      //是java中的注释,#是properties文件中的注释,<!-  注释-->是xml中的注释

     关于异常,主要包括检查异常(编译器异常)和运行时异常(运行器异常),如果下标越界,则是运行时异常,如果没有给局部变量赋初值,则编译时会报错,如果声明一个静态的String对象,如static String s;虽然类加载时s=null,但是运行时还是会出现nullpointerException.

    DOM:是在内存中生成一个文档树,可以反复遍历,即可以回覆;

    SAX:适合大型xml文件的解析,之遍历一次,即不可以回覆.

    垃圾回收器是一个独立的线程,而JVM是一个独立的进程,垃圾回收不能被程序员干预,但是程序员可以调用System.gc()通知做回收处理.

    SubString(2,5)前闭后开,即String s="hellojava" ,Stringss=s.SubString(2,5),则ss="llo";

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值