永发信息网

java中接口的方法都是抽象的吗

答案:3  悬赏:20  手机版
解决时间 2021-02-25 03:05
  • 提问者网友:自食苦果
  • 2021-02-24 15:29
java中接口的方法都是抽象的吗
最佳答案
  • 五星知识达人网友:渊鱼
  • 2021-02-24 16:26
定义了非抽象方法,它默认也是抽象的方法,实现类必须重写,你只是省略的关键字abstract,实际上接口会自动给你加上的
全部回答
  • 1楼网友:低音帝王
  • 2021-02-24 19:24
这需要对面向对象有较深的理解,面象对象中多态很重要,也是整个面向对象思想的核心,比如写个程序,一堆动物的叫声,用面象对象来思考,肯定要定一个抽象类,然后所有动物去继承这个抽象类,下面它们具体发出声音就要用到多态了,假如再写一个能发出声音的东西,这时候通常就要定义接口,然后继承接口的可以是动物,也可以是电视,手机,总的来说,只有一个概念而没有具体的定义成接口,而有具体的就定义成抽象类,抽象类和接口对程序有良好的扩展性和维护性,比如又在这个程序中再加一个扬着头叫的动物,你肯定不能把它和之前的动物放一起,不然很乱
  • 2楼网友:天凉才是好个秋
  • 2021-02-24 17:57
在传统版本上,接口中的所有方法必须是非静态的,且是abstract的,且是public的。普通方法可以不写修饰符,也会默认为public和abstract,当然你可以写上了。 但在java版本1.8中,这就不大一样了。 你可以为方法添加默认方法,这时候实现类不继承该方法也是可以编译通过的。不过我不确定此时的方法是不是还是抽象的。我们重点说下面的: 你还可以为接口添加静态方法。从技术角度来说,这是完全合法的。只是它看起来违反了接口作为一个抽象定义的理念。 例子: 至今为止,我们经常在相互一起使用的类中使用静态方法。你可以在标准库中找到像Collection/Collections 或者Path/Paths 这样成对的接口和类。 以Paths 类为例,它只有一些工厂方法。你可以通过一组字符串来构造一个路径,例如Paths.get("jdk1.8.0", "jre", "bin")。在Java 8 中,Path 接口中添加了这样一个方法: public interface Path { public static Path get(String first, String... more) { return FileSystems.getDefault().getPath(first, more); } ... } 这样Paths 类就再没有存在的必要了。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯