继承&抽象类&接口

1:继承

      1:继承用关键字extends,子类继承父类所有的方法和变量并可以直接调用

      2:如果子类有重名方法(重写)和变量,那如果调用,优先使用子类自己的

      3:对于变量父类成员变量,子类成员变量,子类局部变量,可以用this.变量和super.变量进行区分

      4:方法的重写,方法名称一样,参数也一样(返回值类型和父亲一样)

        //子类方法的返回值范围必须要小于等于父类的返回值范围

                    为了方便区分,用@Override标注一下

              重载:方法名称一样,参数的个数或者类型或者不同类型的顺序不一样。

      5:子类构造方法的第一行,如果不写,系统默认有一个super(),调用父类的无参构造

      6:如果父类有多个构造,子类可以通过super调用其中任何一个

      7:super必须在子类构造的第一句,仅有一个

      8:同理:子类的构造方法调自己的另一个构造,用this()

          如果子类的一个构造方法,调自己的另一个构造方法的话,那么此构造方法不再赠送super()

示例代码:

public class Fu {

  public String name="fu";

  public int age=45;

  public void outName()

  {

      System.out.println("爸爸的名字:"+name);

  }

    public void outAge()

    {

        System.out.println("爸爸的年龄:"+age);

    }

}

public class Zi extends Fu {

  zi(){

super();

}

    public int age = 15;

    public void outAge() {

        System.out.println("儿子的:" + age);

    }

}


2:抽象类


      1:抽象方法:abstarct修饰,无方法体

      2:抽象类:也是abstract修饰,抽象类不可以直接new对象,有抽象方法的类一定是抽象类

                但是抽象类不一定有抽象方法

      3:子类如果继承抽象类,实现了父类所有的抽象方法,就成了普通类

        如果没有全都实现,子类还是一个抽象类

      4:抽象类一样可以有构造方法,并且如果子类继承的话,super中也会执行



3:接口

接口不能直接使用,必须有一个实现类来实现其所有的抽象方法,如果不全部实现,则实现类为抽象类。

    注意,接口没有静态代码块和构造方法

* 1:接口中的抽象方法,修饰符必须是固定的 public abstract

* 2:由于是固定的public abstarct 可任意一个或者多个省略

* 3:接口中可以包含的内容:

*    java7:变量(常量),抽象方法

            说是变量,其实默认用public static final修饰,修饰符可省略,功能也就是个常量

*    java8:比7多了默认方法和静态方法

*          默认方法可以被实现类直接调用或者是覆盖重写,解决了抽象类升级的问题

*          静态方法只能接口名称调用,不能实现类调用(跟类的静态方法有区别,因为单继承,多接口)

*    java9:比8多了私有方法

*          普通私有:解决多个默认方法之间重复代码问题

*          静态私有:解决多个静态方法之间重复代码问题

*4:实现多个接口:

            如果多个接口中抽象方法重名,只实现一个就行

            如果多个接口中默认方法重名,则必须覆盖重写解决冲突

 * 5:继承父类同同时实现接口:继承优先级高于接口实现

            如果父类和接口的默认方法重名,则优先使用父类的

示例代码(接口定义):

public interface myInterface {

    public abstract void test1();

    public void test2();

    void test3();

    //静态方法

    public static void statest1(){

        System.out.println("接口的静态方法");

    }

    //变量

    public static final int i=10;

    //默认方法 1

    public default void detest1()

    {

        System.out.println("接口的默认方法1");

    }

    //默认方法 2

    public default void detest2()

    {

        System.out.println("接口的默认方法2");

    }

    //私有方法,供默认方法调用,外部不能用,java9及以上才行,本计是8,

    //暂时不能用

//    private void pritest1(){

//        System.out.println("接口的私有方法");

//    }

}

示例代码(实现接口):

public class myClassimplinter implements myInterface {

    @Override

    public void detest2(){

        System.out.println("实现类的覆盖默认方法");

    }

    @Override

    public void test1() {

        System.out.println("test1");

    }

    @Override

    public void test2() {

        System.out.println("test2");

    }

    @Override

    public void test3() {

        System.out.println("test3");

    }

}


最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 199,830评论 5 468
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 83,992评论 2 376
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 146,875评论 0 331
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 53,837评论 1 271
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 62,734评论 5 360
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,091评论 1 277
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,550评论 3 390
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,217评论 0 254
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,368评论 1 294
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,298评论 2 317
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,350评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,027评论 3 315
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,623评论 3 303
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,706评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,940评论 1 255
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,349评论 2 346
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 41,936评论 2 341