发布日期:2015-11-02 11:56 来源: 标签: 编程语言 Java教程 Overriding java实例
本章我们主要学习如何实现Java方法覆盖?覆盖与重载有什么区别?下面我们就做一下具体讲解,希望大家多多支持中国站长网络学院。

前面章节中我们已经学习了Java方法的重写,本文我们来看下 Java 方法覆盖的实现。

方法重载与方法覆盖区别如下:

  • 方法重载(Overloading):如果有两个方法的方法名相同,但参数不一致,哪么可以说一个方法是另一个方法的重载。
  • 方法覆盖(Overriding):如果在子类中定义一个方法,其名称、返回类型及参数签名正好与父类中某个方法的名称、返回类型及参数签名相匹配,那么可以说,子类的方法覆盖了父类的方法。

以下实例演示了 Java 方法覆盖(Overriding)代码的实现:

/*
 author by w3cschool.cc
 Findareas.java
 */
public class Findareas{
   public static void main (String []agrs){
      Figure f= new Figure(10 , 10);
      Rectangle r= new Rectangle(9 , 5);
      Figure figref;
      figref=f;
      System.out.println("Area is :"+figref.area());
      figref=r;
      System.out.println("Area is :"+figref.area());
   }
}
class Figure{
   double dim1;
   double dim2;
   Figure(double a , double b) {
      dim1=a;
      dim2=b;
   }
   Double area() {
      System.out.println("Inside area for figure.");
      return(dim1*dim2);
   }
}
class Rectangle extends Figure {
   Rectangle(double a, double b) {
      super(a ,b);
   }
   Double area() {
      System.out.println("Inside area for rectangle.");
      return(dim1*dim2);
   }
}

以上代码运行输出结果为:

Inside area for figure.
Area is :100.0
Inside area for rectangle.
Area is :45.0

相关评论

专题信息
    Java是一种可以撰写跨平台应用程序的面向对象的程序设计语言。Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于PC、数据中心、游戏控制台、科学超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社群。Java分为三个体系,分别为Java SE(J2SE,Java2 Platform Standard Edition,标准版),JavaEE(J2EE,Java 2 Platform, Enterprise Edition,企业版),Java ME(J2ME,Java 2 Platform Micro Edition,微型版)。本教程我们将为大家介绍 Java 常用的实例,通过实例学习我们可以更快的掌握 Java 的应用。