第四章
重载与构造方法
12/26/2017
威迅教育开发部监制
回顾
面向对象的三大基本特点
类和对象的概念
java类的定义,类的属性和方法,类的构造方法以及对象的创建与引用
12/26/2017
威迅教育开发部监制
目标
理解方法重载的意义
掌握成员方法的重载,构造方法的重载。
掌握this,static 关键字的作用
12/26/2017
威迅教育开发部监制
概述
多态性是面向对象程序设计的重要特性之一。多态性分为两种:静态多态和动态多态。方法重载用于实现静态多态性。
本章主要讲解方法重载及其调用、构造方法的重载及其调用等。然后讲解Java编程中经常使用的this和static关键字。
12/26/2017
威迅教育开发部监制
方法重载(overload)
类的同一种功能可能有多种实现方式,到底采用哪种实现方式,取决于调用者给定的参数
例:杂技师能训练动物,对于不同的动物有不同的训练方式
public void train (Dog dog){
//训练小狗站立、排队、做算术
…
}
public void train (Monkey monkey){
//训练小猴敬礼、翻筋斗、骑自行车
…
}
12/26/2017
威迅教育开发部监制
函数重载
函数重载是指: 相同的函数名具有不同的实现
若希望进行两个整数相加,两个实数相加,两个浮点数相加,两个字符串相加,要用四个函数来实现
C语言编程,必须给四个函数起四个不同的函数名
Java 只需给这四个函数取一个相同的名字即可,减少了用户调用函数的麻烦
?
12/26/2017
威迅教育开发部监制
函数重载的应用
普通函数的重载
类的方法的重载
用同一个函数名实现不同的功能
重载函数之间靠包含的参数的类型与参数的个数不同进行区分,与返回类型无关
12/26/2017
威迅教育开发部监制
方法重载(overload)
方法重载规则:
方法名相同
方法的参数类型、个数至少有一项不相同
方法的返回类型可以不相同
方法的修饰符可以不相同
12/26/2017
威迅教育开发部监制
例1 参数类型不同
public class Student
{
public int sum ( int a ,int b )
{
return a+b ;
}
public float sum (float f1,float f2 )
{
return f1 +f2 ;
}
public double sum ( double d1 , double d2)
{
return d1 + d2 ;
}
}
整型参数
实型参数1
实型参数2
12/26/2017
威迅教育开发部监制
例2 参数个数不同
public class Student
{
public int sum ( int a ,int b )
{
return a+b ;
}
public int sum ( int a ,int b ,int c )
{
return a+b+c ;
}
public int sum ( int a ,int b ,int c ,int d )
{
return a+b +c+d ;
}
}
两个参数的sum
三个参数的sum
四个参数的sum
12/26/2017
威迅教育开发部监制
4-重载-构造函数 来自淘豆网m.daumloan.com转载请标明出处.