方法
-
方法中不能定义方法。
-
方法内部不能定义带有范围修饰符的属性
-
return不能返回多个值,例:return 值1,值2 (×)
方法重载:
方法名相同,参数不同(个数不同 或 类型不同)
作用:降低开发者在方法名上的起名时间,相同功能的方法可用同一方法名,使用者对于同一功能类型的方法也只需记住一个名字。
方法重写:
方法的重写需要注意什么?
-
方法名,传递的参数必须一致。
-
范围修饰符不能低于父类。
-
private修饰的方法不能重写
-
static 修饰的方法不能重写
-
final 修饰的方法不能重写
-
子类重写的方法中的抛出异常的范围必须小于父类或没有异常抛出
当一个类继承另外一个类,构造方法调用的顺序是什么?
如果方法中第一行没有调用父类的构造方法或者没有调用其他类的构造方法,则默认先创建父类的无参构造,在执行子类中的其他代码
重载和重写的区别:
方法的重载实现了编译时的多态性,重写实现运行时的多态性。重载发生在一个类中,同名的方法如果有不同的参数列表(参数类型不同、参数个数不同或者二者都不同)则视为重载,重载对返回类型没有特殊的要求,不能根据返回类型进行区分;重写发生在子类与父类之间,重写要求子类被重写方法与父类被重写方法有相同的参数列表,有兼容的返回类型,比父类被重写方法更好访问,不能比父类被重写方法声明更多的异常(里氏代换原则)。