Java中的方法重写

 

  1. 什么是方法的重写
    如果子类对继承的父类方法不满意,是可以重写父类继承的方法的。当调用方法时,会优先调用子类的方法
  2. 语法规则:
    a.返回值类型
    b.方法名
    c.参数类型及个数
    都要与父类继承的方法相同,才叫方法的重写。

    代码示例如下:
    我们先创建一个Animal类为父类
    //Animal类为父类
    public class Animal {
    	public int age ;
    	public String name;
    	public  void eat(){
    		System.out.println("动物具有吃东西的能力");
    	}
    }

    再创建一个子类:Dog类
     

    //Dog类作为子类,继承自父类Animal
    public class Dog extends Animal {
    	//Dog类中重写父类Animal类的成员方法——eat()
    	public void eat(){
    		System.out.println("狗是可以吃东西的");
    	}
    }


    在实现类中进行测试
    public class Initial {
    
    	public static void main(String[] args) {
    		//创建一个Dog类对象
    		Dog dog = new Dog();
    		//dog对象调用eat()方法
    		dog.eat();
    	}
    
    }

    最后的运行结果:
     

    狗是可以吃东西的
    

    可以看出,Dog子类重写了父类eat()方法后,子类对象再调用eat()将优先调用子类的方法!

    注意:
    (1)仅当父类的方法是可访问时,它才能被覆盖。父类的私有方法不能被覆盖。如果子类中定义的方法和父类中的私有方法同名,那么这两个方法完全没关系。
    (2) 静态方法可以被继承但是不可以被覆盖。如果父类中的静态方法被子类重写定义,那么定义在父类中的静态方法将被隐藏,可用父类名 . 静态方法调用隐藏的静态方法。

转载于:https://my.oschina.net/u/3421709/blog/885450

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值