方法的语法
修饰符 返回值类型 方法名(参数类型 参数名){
...
方法体
...
return 返回值;
}
重载(overload)
- /**
- * 重载 Overload:
- * 同一个类中, 多个方法拥有相同的名字, 但参数类型以及参数数量必须不一样.
- * 返回值可相同也可不相同, 但单凭返回值不可用来判断方法之间是否存在.
- */
- public class example {
- public void print() {};
- //public String print() {}; 参数类型与上一条方法一样, 返回值不同, 无法通过编译
- public void print(int a) {};
- public void print(String a) {};
- }
重写 Override
- /**
- * 1. 重写方法只能存在于父子类间, 父子类间的这个方法的参数列表, 返回类型必须完全相同
- * 2. 重写的方法中, 子类的权限修饰符必须>= 父类的
- * 3. 父类的方法为 private 时, 子类出现同名方法不属于方法的改写, 只是在子类内部重新定义的一个方法
- * 4. 重写方法中, 子类抛出的异常需要小于等于父类抛出的异常
- *
- */
- class animal{
- int num;
- public void eat() {
- System.out.println("fruits");
- };
- private void run() {
- System.out.println("run");
- }
- public void count() throws IOException {}
- }
- class lion extends animal{
- public void eat() {// 属于改写
- System.out.println("meat");
- }
- public void run() {// 不属于改写
- System.out.println("jump");
- }
- //public void count() throws ClassNotFoundException {}; 不能抛出父类方法中没有的异常
- public void count() throws IOException {} // 子类抛出的异常可与父类相同的异常或子异常
- }
来源: http://www.bubuko.com/infodetail-2748419.html