当前位置: 移动技术网 > IT编程>开发语言>Java > Java连载45-继承举例、方法覆盖

Java连载45-继承举例、方法覆盖

2019年10月27日  | 移动技术网IT编程  | 我要评论

一、java语言中假设一个类没有显式的继承任何类,那么该类默认继承java se库中提供的java.lang.object类

1.快捷键:ctrl + shift + t:可以在myeclipse中查找类

2.快捷键:ctrl + shift + r:可以在myeclipse中查找资源

继承类举例:

 

package com.bjpowernode.java_learning;

​

public class d45_1_ extends extend1 {

  public static void main(string[] args) {

    d45_1_ d1 = new d45_1_();

    system.out.println(d1.tostring());//说明继承了javase默认的类

    system.out.println(d1.a);//继承了extend1这个类,其实继承就是指把父类的代码都拿到子类里面

    //不能继承构造方法和私有实例变量

  }

​

}

class extend1 {

  int a;

}

回顾一下:

方法重载和返回值类型,和修饰符列表是没有关系的。

方法重载的条件:在同一个类中;方法名相同;参数列表不同(包括顺序、类型、个数)

二、方法的覆盖

1.方法覆盖又被称为方法重写,英文名称:override\overwrite

2.什么时候使用方法重写

当父类中的方法已经无法满足当前子类的业务需求,子类有必要将父类中继承过来的方法机型重新编写,这个重新编写的过程称为方法重写/方法覆盖

3.什么条件下才会发生方法覆盖

(1)方法重写发生在具有继承关系的​父子类之间;

(2)返回值类型相同,方法名相同,形式参数列表相同

(3)方法重写的时候,访问权限不能变得更低,比如:原来的函数是public的,继承的类必须比public更大,或者平级,不能是protected这种更小的权限

(4)方法重写的时候,抛出异常不能更多,可以更少或一样多。(这个后面再讲)

4.建议方法重写的时候尽量复制粘贴,不要编写,容易出错,导致没有产生覆盖​。

5.​注意点:

(1)私有方法不能继承,​所以不能覆盖;(2)构造方法不能继承,所以​不能覆盖;(3)静态方法不存在覆盖​;(4)覆盖只针对方法不包含属性变量​。

 

package com.bjpowernode.java_learning;

​

public class d45_2_methodcover {

  public static void main(string[] args) {

    animal1 a1 = new animal1();

    a1.name = "jfai";

    a1.move();

    bird1 b1 = new bird1();

    b1.name = "jfioaweh";

    b1.move();

  }

​

}

class animal1{

  string name;

  public void move() {

    system.out.println(this.name+"正在移动");

  }

 

}

class bird1 extends animal1{

  public void move() {

    system.out.println(this.name+"不再移动");//方法重写,

  }

 

}

6.生成override的​快捷方法:

source-生成方法覆盖​

五、源码:

d45_1_inheritclassexample.java

d45_2_methodcover.java

地址:

https://github.com/ruigege66/java/blob/master/d45_1_inheritclassexample.java

https://github.com/ruigege66/java/blob/master/d45_2_methodcover.java

2.csdn:https://blog.csdn.net/weixin_44630050(心悦君兮君不知-睿)

3.博客园:https://www.cnblogs.com/ruigege0000/

4.欢迎关注微信公众号:傅里叶变换,个人公众号,仅用于学习交流,后台回复”礼包“,获取大数据学习资料

 

 

如对本文有疑问, 点击进行留言回复!!

相关文章:

验证码:
移动技术网