java方法的重载(overload)与重写(override)的区分与构造方法的重载
2013-12-29 22:29
666 查看
重载(overload) 重写(override) 多态体现
重写: 概念:父,子类中的多态。
要求:父,子类方法的声明全部相同(返回值,函数名,参数列表:类型,个数,顺序)。
特性:1.方法体不同(多态)。
2.当子类初始化父类的后,用 初始化 父类的对象 去访问重写方法,访问的是 子类 重写的方法。
注意:1.必须能继承(不能为private!);
2.子类方法的访问修饰权限 >= 父类的(可以扩展访问权限);
3.子类抛出异常 <= 父类异常(缩小异常);
-------------------------------------------------------------------------------------------------------------------------------------------------
重载: 概念:一个类中的多态。
要求:两个或多个方法名字一样(同名方法),参数列表必定有一点不同(参数列表:类型,个数,顺序(多态性体现))
特性:1.方法体不同(多态)。
2.参数列表不同。
注意:返回值不是区分标准(可以不同)
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
构造方法的重载:在没有重载之前,一个类 会生成一个默认的(无参数,无方法体)构造方法。当重载后就消失。
查看 默认构造方法的办法:
任意class,编译通过后(生成class文件后)在dos窗口中输入 javap 类名 反编译:默认构造方法就会出现.
列子:
public class Test
{ public static void main(String[]args){}
}
反编译后:(javap Test)
compiled from "Test.java"
public class Test
{
Test();
public static void main(String[]args){}
}
感想:Java和C很多雷同 — —
重写: 概念:父,子类中的多态。
要求:父,子类方法的声明全部相同(返回值,函数名,参数列表:类型,个数,顺序)。
特性:1.方法体不同(多态)。
2.当子类初始化父类的后,用 初始化 父类的对象 去访问重写方法,访问的是 子类 重写的方法。
注意:1.必须能继承(不能为private!);
2.子类方法的访问修饰权限 >= 父类的(可以扩展访问权限);
3.子类抛出异常 <= 父类异常(缩小异常);
-------------------------------------------------------------------------------------------------------------------------------------------------
重载: 概念:一个类中的多态。
要求:两个或多个方法名字一样(同名方法),参数列表必定有一点不同(参数列表:类型,个数,顺序(多态性体现))
特性:1.方法体不同(多态)。
2.参数列表不同。
注意:返回值不是区分标准(可以不同)
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
构造方法的重载:在没有重载之前,一个类 会生成一个默认的(无参数,无方法体)构造方法。当重载后就消失。
查看 默认构造方法的办法:
任意class,编译通过后(生成class文件后)在dos窗口中输入 javap 类名 反编译:默认构造方法就会出现.
列子:
public class Test
{ public static void main(String[]args){}
}
反编译后:(javap Test)
compiled from "Test.java"
public class Test
{
Test();
public static void main(String[]args){}
}
感想:Java和C很多雷同 — —
相关文章推荐
- 重载(Overload)和重写(Override)的区别。重载的方法能否根据返回类型进行区分?
- 黑马程序员——Java学习笔记--方法的重载(Overload)与重写(Override)
- 重载(Overload)和重写(Override)的区别。重载的方法能否根据返回类型进行区分?
- 黑马程序员——Java区分---OverLoad重载与Override重写
- Java--方法重写,重写(Override)与重载(Overload)区别
- 重载(Overload)和重写(Override)的区别。重载的方法能否根据返回类型进行区分?
- java方法的重载(Overload)与重写(Override)
- java基础---方法的重载(overload)和覆盖(重写)(override)
- JAVA中继承时方法的重载(overload)与重写/覆写(override)
- java方法的重载(Overload)与重写(Override)
- 重载(overload)和重写(override)的区别?重载的方法能否根据返回类型进行区分?
- java方法的重载(Overload)与重写(Override)
- java中方法重载(overload)和方法重写(override)区分
- Java中方法的重写(override)和重载(overload)的使用规则总结:
- Java中方法重载overload和重写override的区别
- Java 重写(Override)与重载(Overload)
- Java 重写(Override)与重载(Overload)
- 【转】C#中隐藏(new)和方法重写(override)和重载(overload)
- Java的重载(Overload)与重写(Override)
- 隐藏(new)和方法重写(override)和重载(overload)的区别