方法的重载,方法的重载是指一个类中可应定义有相同名字,但是参数不同的多种方法,调用时,会根据不同的参数表选择不同的方法。java允许重载任何方法,编译器通过用各个方法给出的参数类型和特定方法的值类型进行匹配来挑选出相应的方法。但是不允许出现两个名字相同,参数类型也相同却返回值类型不同的情况。方法重载是java多态性的一种,另一种是重写(关于重写将在继承那里总结)。
首先要明确构造器的概念。在每一个类中,都有一个特殊的方法,这个方法就是构造方法。构造方法的功能是对类中创建的新对象进行初始化。每次创建新对象时构造方法被系统自动调用。这个方法就是构造器。构造器和普通的方法不同,通常构造器没有自己的名字,直接将类的名字作为构造方法的名字。当从一个类创建某个对象时,要用new关键字来建立对象,即为新建的对象分配内存。new语句的功能实际上就是调用类中的一个构造方法。
在一个类中通常有多个构造方法,通过不同的入口参数进行区分。默认构造器不带入口参数。仅当类中没有出现任何的构造器时,系统才会提供无参数的构造器。因此如果类中提供了至少一个构造器而且你自己没有提供无参数的构造器,在构造对象时不提供参数将会被视为不合法。
方法重载的优势:提高了代码的复用率,消除了一个符号只能代表一种意义带给程序设计者的困扰。缺点:使得程序的耦合性增强了。
构造方法的重载实例:
class 矩形{
float lenth,wideth;
矩形(){
lenth; //构造方法
wideth;
}
矩形(int x,int y){
lenth=x; //构造方法
wideth=y;
}
}
类方法和实例方法,成员变量可以分为实例变量和类变量。同样,类中的方法也可分为实例方法和类方法。方法类型前面不加关键字static修饰的是实例方法,加static修饰的是类方法(静态方法)。实例方法既能对实例变量操作,也能对类方法进行操作。类方法只能对类变量进行操作。对这些方法的重载也是一样的。