JAVA 重载与构造方法

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

多态性分为两种:静态多态和动态多态。
方法重载用于事项静态多态性。

重载方法:
对于类的方法,如果有两个方法的方法名相同,但参数不一致,那么可以说,一个方法是另一个方法的重载方法。

重载方法必须满足以下条件:(只记住前两条就可以)
1.方法名必须相同;
2.方法的参数类型、个数至少有一项不同;
3.方法的返回类型可以不同;
4.方法的修饰符可以不相同。

只有对不同的数据完成基本相同的任务的方法才用方法重载,使用方法重载的优点是:
1.不必对相同的操作使用不同的方法名;
2.有助于更轻松的理解和调试代码;
3.更易于维护代码。

构造方法必须满足以下语法规则:
1.方法名必须与类名相同;
2.不要声明返回类型。
当类中没有定义构造方法时将使用默认的构造方法。

this关键字-----
this是一个引用,该引用始终指向程序对象本身。
this的作用:
1.区分变量;2.调用重载的构造方法。
用this语句来调用其它的构造方法时,必须遵守以下语句规则:
假如在一个构造方法中使用了this语句,那么他必须作为构造方法的第一条语句(注释的语句除外);
只能在一个构造方法中用this语句来调用类的其它的构造方法,而不能在实力方法中用this语句来调用类的构造方法;
只能用this语句来调用其它构造方法,而不能通过方法名来直接调用构造方法。

static关键字-----
用static修饰的成员变量表示静态变量,可以直接通过类名来访问;
用static修饰的成员方法表示静态方法,可以直接通过类名来访问;
用static修饰的程序代码块表示静态代码块,当Java虚拟机加载类时就会执行该代码块。

被static所修饰的成员变量和成员方法表明该成员归某个类所有,它不依赖于类的特定实例,被类的所有实例所共享。

静态变量和实例变量的区别如下:
静态变量在内存中只有一个拷贝,运行时Java虚拟机只为静态变量分配一次内存,在加载类的过程中完成静态变量的内存分配。可以直接通过类名访问静态变量,也可以通过实例来访问静态变量。对于实例变量,每创建一个实例,就会为实例变量分配一次内存,实例变量可以在内存中有好几个拷贝,每个拷贝属于特定的实例,互不影响。

静态方法可以访问的内容:
因为静态方法不需要通过它所属的类的任何实例就会被调用,因此在静态方法中不能使用this关键字,也不能直接访问所属类的实例变量和实例方法,但是可以直接访问所属类的静态变量和静态方法。
实例方法可以访问的内容:
如果一个方法没有被static修饰

,那么它就是实例方法,在实例方法中可以直接访问所属类的静态变量、静态方法、实例变量和实例方法。

static代码块-----
在Java虚拟机加载类时就会执行这些静态代码块(即先于main方法被执行),如果在类中包括多个静态代码块,那么Java虚拟机将按照它们在类中出现的先后顺序执行它们,每个静态代码块只会执行一次。

相关文档
最新文档