java tips

发表于:2007-05-25来源:作者:点击数: 标签:java语法Tips基本中的
基础语法 1) 类中的基本数据类型的成员会被自动初始化,但如果一个变量在方法中定义,那么在使用此变量前必须初始化. 2) 如果只是创建引用而没有初始化,这些引用的值为null. 3) 数组是对象,使用前必须初始化. int[] a=new int[3]; 4) 过载(overload)不可以用返
基础语法

1) 类中的基本数据类型的成员会被自动初始化,但如果一个变量在方法中定义,那么在使用此变量前必须初始化.
2) 如果只是创建引用而没有初始化,这些引用的值为null.
3) 数组是对象,使用前必须初始化. int[] a=new int[3];
4) 过载(overload)不可以用返回值判断.
5) 基本数据类型的数组如果没有赋初值,且此数组是类成员,则java会自动给他们赋初值.
6) 若数组定义在方法中,则必须被显示初始化.
7) Java总是在类所在的文件中查找他需要的其它类.
8) Override为重(chong)置,overload为过载或重(zhong)载.
9) 若超类与子类不在同一文件夹中,必须把超类的地址加入classpath中.
10) 若超类和子类在同一文件中,则超类不可谓public.
11) 嵌入其它类中的对象必须在使用前初始化.
12) 在创建对象时,类中的所有数据成员会首先进行初始化.静态成员最先被初始化,并且只执行一次,先于main().
13) 静态变量和方法,可通过类名直接访问,而不用实例化.
14) Java程序中初始化的顺序:⑴主类中的静态成员.⑵主类的超类的构造方法,按照从最高到最低的顺序调用.⑶主类中的非静态对象.⑷调用主类的构造方法.
15) Java中无缺省参数的用法.
16) 在一个构造方法中只能调用一次其他的构造方法,并且必须是第一条语句.
17) 若一个类没有public修饰符它可以被:⑴同一文件⑵同一文件夹⑶同一软件包 的类访问.
18) Public:任何类可以访问;protected:继承类和同一软件包的类可以访问;private:只有数据或方法所在的类可以访问;无存取控制符:同一软件包的类可以访问.
19) 多态性的重要特征是把可变化的事物与不可变化的事物分开,即当新增或修改某个代码段时,尽量不要使其影响程序的其他地方.
20) 抽象方法没有实现细节,没有花括号.
21) 不能创建抽象类的对象,只能使用继承的方法来访问抽象类中的成员,即抽象类的作用就是用作继承.
22) 如果一个类含有一个抽象方法,此类必为抽象类,但抽象类可以不包含抽象方法.
23) 抽象类为后续继承类提供了一个统一的框架或界面.
24) 一个对象是常量不代表它的成员也是常量.特别是当一个数组为常量时.(数组是对象) 如:final int[] a={1,2,3,4,5}; a[3]=3;//合法
25) 空常量是定义时没有初始化的常量,它只能在构造方法中初始化.final参数不可改变,final方法不可重置,final类不可继承.
26) Abstract与final互相排斥,不可同时使用,前者专用于继承,后者禁止继承.
27) 接口中的所有数据成员都是static和finanl的(尽管可以省略修饰符),并且必须赋初值,即静态常量.
28) 接口(interface)中的方法只有定义没有实现细节,并且全部为public(尽管可以不用public修饰),即接口中的方法全是抽象方法.
29) 若接口为public,必须与文件同名.
30) 接口比抽象类更"抽象",也是起框架的作用.
31) 实现接口的类必须给出接口中所有方法的实现;因为接口中的方法全是pulic,所以在实现方法时必须加上public修饰符.
32) 当接口继承了其它接口时,实现接口的类要实现接口继承链上的所有方法.
33) 不管接口嵌入的有多深,接口中的方法总是public的.
34) 嵌入类的接口可为private,此时只有在本类中实现此接口.
35) 当以某一接口为形参时,要以实现了本接口的类的对象作为实参,这就是接口的upcasting.
36) 类可以嵌入另一个类,被称为内部类(inner class),但不可以嵌入到接口中.
37) 使用内部类时先创建外部类的对象,然后通过该对象来产生内部类的对象.有两种方法,一种形如: A.B b=a.new B(); A-外部类,B-内部类,a-外部类对象,b内部类对象;一种是通过外部类提供的专用方法来创建内部类对象: A a=new A(); A.B b=func();其中func()为外部类的专门用于创建内部类的方法,定义应为: B func() { B tmp=new B(); return tmp; }
38) 内部类可以直接访问外部类的所有成员,它就如同类的一个普通的方法.
39) 当某类继承了一个内部类时,必须在构造方法的第一行显式地调用 new A().super();或 a.super(); A-外部类 a-外部类对象.
40) 栈由下向上生长,栈中的数据有确切的大小和生命期,对象的引用在栈中;对象本身在堆中,它可以动态的创建无确切的大小和生命期;静态存储区中保存了static修饰的基本数据类型的数据和方法,但不包括对象;常量存储区保存了由final修饰的常量.
(未完)

原文转自:http://www.ltesting.net

评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)