栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > .Net

Java类和接口的关系与区别

.Net 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Java类和接口的关系与区别

Java类和接口的关系与区别

一,类和类
类和类是继承关系,子类继承父类,既可以单继承又可以多层继承;
单继承一个子类继承一个父类
多层继承建议不超过三次,否则会冗余

//多层继承实现多继承
class A{//父类A类
    private int num=10;
    public int getNum(){
        return this.num;
    }
    public void fun(){
        System.out.println("你今天真好看!");
    }
}
class B extends A{//B类继承A类
    private String name="张三";
    public String getName(){
        return this.name;
    }
    public void fun(){//方法覆写
        System.out.println(this.getNum());
        //父类私有域被继承但不可直接使用,需通过getter方法间接获得私有域的内容
    }
}
class C extends B{//C类继承B类,相当于间接继承A类
    private String name="刘能";
    public String getName(){
        return this.name;
    }
    public void fun(){//方法覆写(结果为覆写后的内容)
        System.out.println(this.getName());
        System.out.println(this.name);
    }
}
public class Test{
    public static void main(String[] args){
        A a=new A();
        a.fun();
        print(new B());//向上转型(优点在于子类可自动进行向上转型,可实现参数的统一)
        print(new C());
    }
    public static void print(A a){
        a.fun();
    }
}


二,类和接口
1,类和接口是实现关系,可以单实现也可以多实现,还可以继承一个类的时候实现多个接口
三,接口和接口
接口和接口是继承关系,单继承和多继承都行。

//接口实现多继承
public interface IA{//父接口A(接口为更纯粹的抽象类,结构组成只含全局常量和抽象方法)
    void funA();
}
public interface IB {//父接口B(接口前添加I用以区分接口)
    void funB();
}
public interface CImpl extends A,B{//接口可继承多个父接口,用,分隔开即可,子接口的命名可选择较为重要的父接口进行命名或自行命名,一般子接口后添加Impl用以区分
    void funC();
}
public class Impl implements CImpl{//定义类实现接口(也可直接实现父接口(多个))
    public void funC(){//抽象方法的实现
        System.out.println("你昨天真好看!");
    }
    public void funA(){
        System.out.println("你今天真好看!");
    }
    public void funB(){
        System.out.println("你明天真好看!");
    }
}
public class Test{
    public static void main(String[] args){
        Impl im=new Impl();//实例化对象
        im.funA();
        im.funB();
        im.funC();
    }
}

抽象类和接口的区别
1,成员区别
抽象类: 变量,常量;有构造方法,也有抽象方法和非抽象方法。
接口类: 只能有常量和抽象方法
2,关系区别
类与类:继承,单继承
类与接口:实现,单实现,多实现
接口与接口:继承,单继承,多继承
抽象类和接口类的区别
两个都是抽象的;抽象类强调的是对事物的抽像,而接口类强调的是对行为的抽象。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/984472.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号