一:类的定义
[修饰符] class 类名{
零到多个构造器定义,
零到多个成员变量,
零到多个方法
}
修饰符:public,final,abstract,空
二:成员变量的定义
[修饰符] 类型 成员变量名 [=默认值];修饰符:public,protected,private,空,static,final(其中private,public,protected只能取其一)
三:方法的定义
[修饰符] 方法返回值类型 方法名(形参列表){//方法体
}
修饰符:public,private,protected,空,static,final,abstract(protected,public,private取其一;abstract,final取其一)
四:static修饰的类变量和类方法
静态成员不能直接访问非静态成员.static修饰的方法和成员变量既可以通过类来调用,也可以使用实例调用.
static修饰的方法中不能使用this引用.
编程时不要使用对象去调用static修饰的成员变量和方法,而要使用类去调用.
五:构造器的定义
[修饰符] 构造器名(形参列表){}
修饰符:public,protected,private,空
六:形参个数可变
在最后一个形参的类型后添加三点...长度可变的形参只能处于形参列表的最后,且一个方法中只能包含一个长度可变的形参,其本质是一个数组类型的形参,因此既可以传入多个参数,也可以传入一个数组.七:数组的定义及初始化
静态初始化type[] arrname; arrname = new type[]{ele1,ele2,ele3...};
type[] arrname = {ele1,ele2,ele3...};
动态初始化
type[] arrname; arrname = new type[len];
type[] arrnaem = new type[len];
不要同时使用动态及静态初始化,即既指定数组的长度,也为每个元素分配初始值.
八:方法重载
方法重载的要求:两同一不同--同一个类中方法名相同,参数列表不同,与方法的返回值类型及修饰符等无关.
九:局部变量
形参,方法局部变量,代码块局部变量.(代码块局部变量:在代码块内定义的局部变量,作用域从定义该变量的地方生效,到该代码块结束时失效)
局部变量除了形参之外,都必须显式的进行初始化.
十:访问控制符
十一:import static
十二:源文件大体结构
十三:常用包
十四:方法重写
十五:super限定
十六:多态
十七:引用变量的强制类型转换
十八:继承与组合
class Base {
public Base() {
this.print();
}
public void print() {
System.out.println("The base class.");
}
}
public class SubTest extends Base {
public SubTest() {
print();
}
public void print() {
System.out.println("The sub class.");
}
public static void main(String[] args) {
SubTest st = new SubTest();
Base bs = new Base();
}
}
//输出
The sub class.
The sub class.
The base class.
十九:初始化块