JDK
eclipse
方法的签名 1、方法的签名包括:方法名和参数列表; 2、在一个类中不可以有两个方法的签名完全相同,即一个类中不可以有两个方法的方法名和参数列表完全一样。 3、若一个类中可以两个方法的方法名相同,但参数列表不能相同,代码如下: public class People{ public void readBook(String bookName){...} public void readBook(String bookName){...} //上述代码编译错误 } public class People{ public void readBook(String oneBook){...} public void readBook(String oneBook, String secondBook){...} //上述代码编译正确 }
方法的重载 Java语言中,可以允许多个方法的名称相同,但参数列表不同,称为方法的重载。 public class People{ public void readBook(String oneBook){...} public void readBook(String oneBook, String secondBook){...} public void readBook(String oneBook, String secondBook, String thirdBook){...} }
编译时根据签名绑定调用方法 在编译时编译器根据签名绑定调用不同的方法,重载的方法可以看成完全不同的方法,方法名相同而已。 public class People{ public void readBook(String oneBook){...} public void readBook(String oneBook, String secondBook){...} public void readBook(String oneBook, String secondBook, String thirdBook){...} } p.readBook('老黑讲Java之基础教程'); p.readBook('老黑讲ava之基础教程','老黑讲Java之面向对象'); p.readBook('老黑讲ava之基础教程','老黑讲Java之面向对象','老黑讲Java之Spring核心技术');
构造方法语法结构 构造方法也是方法,但是它不同于其他方法,构造方法定义满足如下两个要求: 1、构造方法的名称必须与类名相同; 2、构造方法没有返回值,不用void修饰词,伪代码如下: [public] People(){ //构造方法体 }
可以通过构造方法初始化成员变量 class People{ String name; int age; String gender; public People(String name, int age, String gender){ this.name = name; this.age = age; this.gender = gender; } } 通过new 构造方法可以初始化成员变量,例如: People p = new People('老黑',18,'男');
this关键字的使用 this关键字用在方法体,表示指向调用该方法的对象,即那个对象调用,this指向的就是哪个对象,如: People p = new People('老黑',18,'男'); System.out.println(p.name);//老黑 在People类中this引用指向的就是上述People的对象,构造方法中this.name与p.name是等价的,所以调用的值相同。
默认的构造方法 1、Java语言中,任何一个类包含构造方法; 2、如果程序员没有定义,那么编译器会自动添加一个无参的构造方法; 3、当定义了构造方法后,Java编译器将会添加默认的构造方法了。代码如下: public class People { String name; int age; String gender; public People() { }
构造方法的重载 一个类中可以定义多个构造方法,这类构造方法名称相同,但是参数列表不同,这中方法叫做方法的重载,例如下面的代码: