接口中的方法可以是abstract修饰方法的吗

abstract可以修饰接口吗_中华文本库
(number);//输出结果是 10000 Java 中的 abstract,static,final 修饰符 abstract 修饰符 abstract 使用对象:类、接口、方法 介绍:类中包括没有实现的方法,不能...
以下描述错误的有() A) abstract 可以修饰类、接口、方法 B) abstract 修饰的类主要用于被继承 C) abstract 可以修饰变量 D) abstract 修饰的类,其子类也可以...
第三次作业 1、用 abstract 修饰的类称为抽象类,它们:A A) 只能用以派生新...6、以下关于接口对象的说法中正确的是:B A) 接口只能被类实现,不能用来声明...
B) abstract 可修饰类、属性、方法。 C) 定义抽象方法需有方法的返回类型、...A A) 包是一些类与接口的集合; B) Java 的包中可以包含子包; C) 包中...
定义一个接口时,要使用如下哪个关键字? A.abstract B.final C.interface D.class 4. 在使用 interface 声明一个接口时,只可以使用哪个修饰符修饰该接口。 A....
抽象类可以通过 new 关键字直接实例化 15. 以下对接口描述错误的有(D) A) 接口没有提供构造方法 B) 接口中的方法默认使用 public、abstract 修饰 C) 接口中的...
抽象类可以通过 new 关键字直接实例化 15. 以下对接口描述错误的有(D) A) 接口没有提供构造方法 B) 接口中的方法默认使用 public、abstract 修饰 C) 接口中的...
接口中的属性都是用 final 修饰的常量, (2)接口中的方 法都是用 abstract 修饰的抽象方法,在接口中只能给出这些抽象方法的方法名、返回值和参 数列表,而不能...
A.abstract B.final C.interface D.class 8.在使用 interface 声明一个接口时,只可以使用哪个修饰符修饰该接口。 A.private B.protected C.private 或者 ...
? abstract修饰该class ? 抽象类中一般包含抽象方法(也可以包含 有 方法体的...接口跟抽象类很相似:但接口中定义的方法都 是抽象方法,接口中定义的成员量都是...42被浏览9327分享邀请回答1713 条评论分享收藏感谢收起4添加评论分享收藏感谢收起查看更多回答[Java] 接口(Interface)与 抽象类 (Abstract)使用规则和区别
接口(Interface)
是抽象方法的集合,接口通常以interface来声明。
一个类通过继承接口的方式,从而来继承接口的抽象方法。
接口并不是类,编写接口的方式和类很相似,但是它们属于不同的概念。  
类描述对象的属性和方法。接口则包含类要实现的方法。
除非实现接口的类是抽象类,否则该类要定义接口中的所有方法。 
接口无法被实例化,但是可以被实现。一个实现接口的类,必须实现接口内所描述的所有方法(所有方法都是抽象的方法),否则就必须声明为抽象类。 
接口没有构造方法,支持多重继承,不能包含成员变量,除了static和final变量。
接口的申明方法
[可见度] interface 接口名称 [extends 其他的类名] {
//任何类型 final, static 字段
public [返回类型] [函数名] ();
// 抽象方法(所有都是 public)
  接口是隐式抽象的,当声明一个接口和接口中方法的时候,不必使用abstract关键字。接口中的方法都是公有的。
  类使用implements关键字实现接口。在类声明中,Implements关键字放在class声明后面。
... implements 接口名称[, 其他接口, 其他接口..., ...] ...
重写接口中的方法时,需注意:
  类在实现接口的方法时,不能抛出强制性异常,只能在接口中,或者继承接口的抽象类 中抛出该强制性异常。
  类在重写方法时要保持一致的方法名,并且应该保持相同或者相兼容的返回值类型。
  一个类只能继承一个类,但是能实现多个接口,同时一个接口能继承另一个接口。
  一个接口能继承另一个接口,和类之间的继承方式比较相似。接口的继承使用 extends 关键字,子接口继承父接口的方法。
抽象类 (Abstract)
 在面向对象的概念中,所有的对象都是通过类来描绘的,但是反过来,并不是所有的类都是用来描绘对象的,如果一个类中没有包含足够的信息来描绘一个具体的对象,这样的类就是抽象类。
  抽象类除了不能实例化对象之外,类的其它功能依然存在,成员变量、成员方法和构造方法的访问方式和普通类一样。抽象类必须被继承,才能被使用。(它没有足够信息描绘一个对象,只有等子类来继承完善后才能使用)
在语言中使用abstract class来定义抽象类。
public abstract class Employee
//成员变量
//成员方法,可以是抽象的或实现的(可以没有抽象方法)
[访问权限修饰符] abstract [返回类型] [函数名]();
声明抽象方法会造成以下两个结果:
  如果一个类包含抽象方法,那么该类必须是抽象类。但是一个抽象类可以没有抽象方法,只是把类申明为抽象的。
  任何子类必须重写父类的抽象方法(一句话抽象方法都要重写,只不过接口的方法全部都是抽象的而已),或者声明自身为抽象类。
  接口不是类,抽象类是一个功能不齐全的类,都不能实例化对象。
  一个类可以实现(implements)多个接口。一个类只能继承(extends)一个抽象类。
   接口没有构造函数,所有方法都是 public abstract的,一般不定义成员变量。(所有的成员变量都是 static final ,而且必须显示初始化)。
  抽象类除了不能实例化对象之外,类的其它功能依然存在,成员变量、成员方法和构造方法的访问方式和普通类一样。
  一个实现接口的类,必须实现接口内所描述的所有方法(所有方法都是抽象的方法),否则就必须声明为抽象类。 
  如果一个类包含抽象方法,那么该类必须是抽象类。任何子类必须重写父类的抽象方法,或者声明自身为抽象类。java里面的接口方法居然可以声明 abstract。。_java吧_百度贴吧
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&签到排名:今日本吧第个签到,本吧因你更精彩,明天继续来努力!
本吧签到人数:0成为超级会员,使用一键签到本月漏签0次!成为超级会员,赠送8张补签卡连续签到:天&&累计签到:天超级会员单次开通12个月以上,赠送连续签到卡3张
关注:671,120贴子:
java里面的接口方法居然可以声明 abstract。。收藏
一直以为接口加abstract是一个一个错误的语法。没有想到官方的文档是这样描述的。9.1.1.1 abstract InterfacesEvery interface is implicitly abstract.This modifier is obsolete and should not be used in new programs.坑死人了,说它过时不应该使用,我测试了下,也不给警告,几个意思。要知道在c#里面,接口的方法加个 public 都是错误的语法啊,别说加 abstract事情经过是这样的,前几天有个人私信,问我问题然后问题,都在手机里面,居然同步不到电脑上,百度这个不行吧。。那问题过程就不截图看了,太麻烦了。反正里面就是有个接口,然后接口有方法用了abstract,当时第一反应就坚持这个题目这样是错误,后来这个人就不想问我了。然后今天拿了电脑查了下文档,测试了下,发现,坑爹的java还真可以这样写。。。interface Pet {public abstract void setName(String name);}在c#里面红色的这两个关键字都会给你语法错误呢。。还是c#好啊。然后,我刚刚给那孩子道歉了,我误导他了。。不好意思啊。。而且希望,有问人的同学,即使别人给你错误的答案,你也不要说出,不会就不要误人子弟,这样的话来,这样会显得自己很没有礼貌的。
自学web前端,html5,css,js免费教程,web前端入门到精通,成为前端开发工程师...
论学好英语的重要性以及c#大法好
java是万能语言,就差加中文了
楼主你自己没学好,接口本来就是抽象的,接口的方法一定是抽象的
java大法好---------仿佛黑暗中熟悉的身影依稀又听见熟悉的声音点亮一束火,在黑暗之中古老的陶罐上早关于我们的传说可是你还在不停地问这是否值得当然火会在风中熄灭,山峰也会在黎明前倒塌摈葬夜色的河爱的苦果将在成熟时坠落此时此地只要有落日为我们加冕随之而来的一切又算得了什么————那漫长的夜辗转而又沉默的时刻
接口都可以理解成特殊的抽象类
哪里有错误,楼主没学明白而已,Java8接口都可以有default了
写不写接口都是抽象的
智联招聘,每天更新350万高薪招聘java程序员信息,真实有效,24小时极速反馈,立即登录填写简历,快速找到好工作!
我是来求经验的,真的真的是。。。
有什么问题吗,有些IDE会提示你可以缺省abstract,写了也不错,检查机制不一样而已,对代码并没有影响
呵呵哒。接口本来就是只有抽象方法的抽象类。既然是类,怎么不能abstract修饰了。智商捉急。
默认就是抽象的。难道你不知道?
快两年了,楼主应该学有所成了吧
你写不写前面都缺省是public abstract
不是给出提示了么,有个下划线提示修饰符多余,eclipse可能需要装个代码规范检查的插件,或者自己往插件里面写规则,提示报错,我以前的公司用插件做到代码没有注释会报错显示那个红叉叉,MVC三层结构接口实现类都得写注释,非常恶心;像这些强制教程序员怎么写代码反人类的事如果在语言层面规定,我个人觉得实在是不够自由,只要符合逻辑,爱怎么写怎么写,在接口里面用abstract,提示写得不够优雅,我大不了不理就行了,反正没错,但是居然通不过编译要强制去改,这逻辑哪里错了,因为语言已经做了处理,java是不用做,c#是不能做,用你最后一句话来形容就是,c#显得不够礼貌
你把接口类反射出来看看,方法修饰符就是abstract
真是蛋疼,我也是刚刚发现,接口居然可以用abstract修饰,这有毛意义啊,感觉纯粹多余
登录百度帐号推荐应用在前面的一片博客&的实例中,定义了一个Iterator接口,具体代码如下所示:
public interface Iterator {
public abstract boolean hasNext();
public abstract Object next();
仔细观察会发现这个接口跟我们往常见到的接口有一些不同。那就是接口中定义的方法是abstract的。平常我们定义一个接口一般都没有abstract,大多按如下方式定义:
public interface Iterator {
public boolean hasNext();
public Object next();
}后来发现还可以在interface前面加上abstract而对整个程序不造成任何影响,程序如下所示:
public abstract interface Iterator {
public abstract boolean hasNext();
public abstract Object next();
那么这里抽象接口,接口中的抽象方法,又到底是什么东西了。其实无论接口和接口中的方法如何声明,都是抽象的。即使在声明接口时,并没有用abstract修饰,但是在编译的时候编译器会自动加上abstract。所以根本没有实质意义上的区分,只不过在写法上有所不同而已。接口中方法都是抽象的,这个无论用不用修饰符abstract都是一样的。
本文已收录于以下专栏:
相关文章推荐
1、向上转型
2、向下转型
在hadoop 权威指南中有说明,原文如下:
The new Java MapReduce API
Release 0.20.0 of Hadoop included a new Java M...
1.抽象类和虚方法的区别(abstract,virtual function)
看到抽象和虚这两词真的觉得有点抽象,有点犯迷糊.其实这两者还是很容易区分的.
1.abstract可以修饰class...
JAVA之旅(七)——final关键字 , 抽象类abstract,模板方法模式,接口interface,implements,特点,扩展
OK,我们继续学习JAVA,美滋滋的
抽象类 是对一系列看上去不同,但是本质上相同的具体概念的抽象。
在语法层面,Java语言对于abstract class和interface给出了不同的定义方式:
abstract class方式定...
/gxinliug/archive//2031246.html
abstract class和interface是Java语言...
他的最新文章
讲师:董岩
您举报文章:
举报原因:
原文地址:
原因补充:
(最多只允许输入30个字)}

我要回帖

更多关于 abstract修饰的方法 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信