|
|
语法图解
语法图解使用了下列规则:
从左到右、从上到下、顺着行的路径读语法图解。
在语法图解中使用了下列符号:
>>- 指示了一个语句的开始
-> 指示该语句在下一行继续
>- 指示该语句从前一行继续
->< 指示该语句的终止
句法单元而不是完整语句的图以 |- 开始并以 -|结束。
要求的项在主要路径上。
>>-required-item---------------------><
可选的项在主要路径下。
>>-required-item--+----------------+-----><
'-optional-item--'
选择项目在一个堆栈中。如果它们被要求,它们是在主路径上;如果它们是可选的,它们是在主路径下。
>>-required-item--+-required-choice1-+--+------------------+--><
'-required-choice2-' +-optional-choice1-+
'-optional-choice2-'
一个选择的缺省项是在该主路径的上面。
.-default-optional-choice-.
>>-required-item--+-------------------------+--><
+-optional-choice1--------+
'-optional-choice2--------'
重复项有一个返回到该主行左上面的箭头。
关键字是小写的。每一个必须象显示的那样被拼写。
变量是大小写混合的(例如 InterfaceTypeList)。每个代表一个用户提供的名称或值。
包括的标点符号是该语法语句的部分。
类语法
>>-+--------+-abstract-class-Identifier-+-------------------+-> '-public-' '-extends-ClassType-'>-+------------------------------+-ClassBody->< '-implements-InterfaceTypeList-'
方法语法
>>-+-----------+-abstract-ResultType-Identifier-> +-public----+ '-protected-'>-(-+---------------------+-)-;->< '-FormalParameterList-'
描述
abstract 关键字被用来创建抽象类和方法。抽象类不能被实例化,它们的用途是向子类提供通用的信息。抽象类可以包含正常的类包含的任何东西,也就是说,类和实例变量,以及带有任何修饰词的方法和构造子。只有抽象类可能有抽象方法。如果一个不是抽象的类包含一个抽象方法,那么,将会出现编译错误。如果下列的一个成立,那么一个有抽象方法:
如果用户声明 private,static,和 final 方法为 abstract,编译错误将出现。不可能重设一个private方法,因此一个 abstract private 方法将永远不会被实现。 Static 方法总是可用的,因此必须有一个实现; static abstract 方法将永远没有实现。 final 方法不能被重设,因此不会有 final abstract 方法的实现。
一个抽象类可以通过提供另一个抽象方法声明来覆盖一个抽象方法。这可以提供一个放置文档注释的地方或来声明一个可以抛出的更加限制的被检查异常集合。
示例
在以下示例中,抽象类 MyAbstractClass 有一个通常方法和一个抽象方法。该具体类 MyConcreteClass 继承自 MyAbstractClass 并且提供了 abstractMethod 的一个实现。
public abstract class MyAbstractClass {
网友评论:(评论内容只代表网友观点,与本站立场无关!) |
阅读排行
|