java类的继承

无纤尘

1、java中类的继承

在现有类的基础上构建一个新类,这个类叫子类,现有类叫做父类(基类)。

2、相关语法

[修饰符] class 子类名 extends 父类名 {....}
例:class dog extends animal {}

3、子类继承父类自动拥有父类共有的属性和方法

注意是共有的方法,default权限以上的属性和方法。

4、java中只支持单继承,不支持多继承。一个类不能同时继承至两个或两个以上的类。

5、父类方法的重写

子类重写父类方法,需要具有相同的方法名,参数列表,返回值类型。

  package com.itheima.first;
  public class HelloWorld {
      public static void main(String[] args) {
           Dog dog1 = new Dog();
           dog1.shout();
      }

  }
    class Animal {
       void shout() {
           System.out.println("动物发出了叫声");
       }
    }
   class Dog extends Animal{
       void shout() {
           System.out.println("汪汪");
       }
   }

子类对象调用shout()方法,只会调用子类重写父类的shout()方法,不会调用父类的shout().

  6、super关键字

当子类重写父类方法后,子类对象无法直接访问父类对象。java中提供了super专门调用父类方法和成员

(1)使用super调用父类成员变量和成员方法,super.成员变量/成员方法
(2)super调用父类构造方法,这里的super相当于父类名,(父类名.静态方法)
注意:super调用父类方法必须位于子类构造方法第一行,并且只出现一次(因为构造方法只能使用一次)

在子类构造方法中一定会调用父类的构造方法。子类可通过super关键字调用父类构造方法,若没有指定,实例化子对象会默认调用父类无参构造方法。

系统会默认提供一种无参构造方法,但如果类中显式定义了构造方法,系统将不会再提供默认无参构造方法了。

6、object类
是所有类的父类。没有用extends关键字直接显式的指定父类的类,那么默认继承object类。

7、final关键字
(1)fina修饰的类叫最终类,不能被继承。(可以理解为:final把类给阉割了,哈哈哈O(∩_∩)O哈哈~)
(2)final修饰的类不能被子类继承
(3)final修饰的变量是常量,只能赋值一次。

版权协议须知!

本篇文章来源于 网络转载 ,如本文章侵犯到任何版权问题,请立即告知本站,本站将及时予与删除并致以最深的歉意

none

47427 0 2019-11-19


分享:
icon_mrgreen.gificon_neutral.gificon_twisted.gificon_arrow.gificon_eek.gificon_smile.gificon_confused.gificon_cool.gificon_evil.gificon_biggrin.gificon_idea.gificon_redface.gificon_razz.gificon_rolleyes.gificon_wink.gificon_cry.gificon_surprised.gificon_lol.gificon_mad.gificon_sad.gificon_exclaim.gificon_question.gif
  • 默认
  • 护眼
  • 夜晚
  • 壁纸
  • 默认