Java:方法的重写
2021/4/17 20:55:28
本文主要是介绍Java:方法的重写,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
重写:需要有继承关系,子类重写父类的方法!子类的方法和父类必须要一致,方法体不同!
1、 非静态的方法才有重写
2、 方法的重写,父类和子类不能使用修饰符private
3、 方法名必须相同
4、 参数列表必须相同
5、 修饰符:范围可以扩大但不能缩小
public>potected>default>private
6、 抛出的异常:范围可以缩小,但不能扩大
ClassNotFoundException--->Exception(大的)
为什么需要重写:
父类的功能,子类不一定需要,或者不一定满足!
1 package com.jiemyx.oop.demo07; 2 3 public class A { 4 public static void test(){ 5 System.out.println("A类的test()静态方法"); 6 } 7 8 //方法的重写,父类和子类不能使用private 9 public void test1(){ 10 System.out.println("A类的test()非静态方法"); 11 } 12 }
1 package com.jiemyx.oop.demo07; 2 3 //重写都是方法的重写,和属性无关 4 public class B extends A{ 5 public static void test(){ 6 System.out.println("B类的test()静态方法"); 7 } 8 9 //Override 重写 10 @Override //注解:有功能的注释! 11 public void test1() { 12 System.out.println("B类的test()非静态方法"); 13 } 14 }
1 package com.jiemyx.oop.demo07; 2 3 import com.jiemyx.oop.demo07.A; 4 5 public class Application { 6 public static void main(String[] args) { 7 8 //静态的方法和非静态的方法区别很大! 9 //非静态的方法才有重写 10 11 //在静态方法test()中,方法的调用只和左边定义的数据类型有关 12 B b = new B(); 13 b.test(); 14 15 //父类的引用指向子类 16 A a = new B(); 17 a.test(); 18 19 20 //非静态方法test1() 21 B b1 = new B(); 22 b.test1(); 23 24 //父类的引用指向子类 25 A a1 = new B(); //子类重写了父类的方法 26 a.test1(); 27 } 28 }
运行结果:
B类的test()静态方法
A类的test()静态方法
B类的test()非静态方法
B类的test()非静态方法
在IDEA软件中,在子类需要重写的地方快捷键:alt+insert--->Override
这篇关于Java:方法的重写的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-12-23线下车企门店如何实现线上线下融合?
- 2024-12-23鸿蒙Next ArkTS编程规范总结
- 2024-12-23物流团队冬至高效运转,哪款办公软件可助力风险评估?
- 2024-12-23优化库存,提升效率:医药企业如何借助看板软件实现仓库智能化
- 2024-12-23项目管理零负担!轻量化看板工具如何助力团队协作
- 2024-12-23电商活动复盘,为何是团队成长的核心环节?
- 2024-12-23鸿蒙Next ArkTS高性能编程实战
- 2024-12-23数据驱动:电商复盘从基础到进阶!
- 2024-12-23从数据到客户:跨境电商如何通过销售跟踪工具提升营销精准度?
- 2024-12-23汽车4S店运营效率提升的核心工具