Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/326.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 方法名称交换-公共摘要或抽象公共_Java - Fatal编程技术网

Java 方法名称交换-公共摘要或抽象公共

Java 方法名称交换-公共摘要或抽象公共,java,Java,我最近遇到了以下方法。我试着用谷歌搜索,并通过定义如下方法,做了一个例子来了解差异;两者似乎是一样的。但是,我需要知道它是否真的是一样的 public abstract void methodName(); abstract public void methodName(); 注:public和abstract在上述两种方法中互换。相同。别担心。两个类似的抽象方法声明。都是修饰符,您可以按任何顺序使用就功能而言没有区别,但无论您选择哪一个,最好保持一致 话虽如此,我几乎从未见过以前使用过的抽象

我最近遇到了以下方法。我试着用谷歌搜索,并通过定义如下方法,做了一个例子来了解差异;两者似乎是一样的。但是,我需要知道它是否真的是一样的

public abstract void methodName();
abstract public void methodName();

注:
public
abstract
在上述两种方法中互换。

相同。别担心。两个类似的
抽象
方法声明。

都是修饰符,您可以按任何顺序使用

就功能而言没有区别,但无论您选择哪一个,最好保持一致

话虽如此,我几乎从未见过以前使用过的
抽象public
。因此,从编码标准的角度来看,
公共摘要
可能会更容易被更多人识别

public abstract void methodName();
abstract public void methodName();
这两种方法是相同的,类似的例子是

public static void main(String args[]);
static public void main(String args[]);

因此,上面两个是相同的。这正是我们希望如何编写的。

这两个代码都是相同的,如果您反编译代码,编译器会将其转换为相同的字节码。然而,一般的做法(不是经验法则)是以访问说明符而不是其他关键字开始代码

public abstract void methodName();
abstract public void methodName();
编译器将这两个方法转换为以下代码

public abstract void methodName();

谢谢,我有点困惑。相关: