Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/318.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_Class_Variables_Methods_Variable Declaration - Fatal编程技术网

Java 声明变量、方法和类?

Java 声明变量、方法和类?,java,class,variables,methods,variable-declaration,Java,Class,Variables,Methods,Variable Declaration,我目前正在学习java,想知道我可以在变量、方法和类之前键入什么类型的关键字 例如,我可以声明一个变量、方法和类,如下所示: public final int exampleVariable; public static double exampleMethod () {} public class exampleClass {} 我还能在这些代码中写些什么?我只是想知道如何具体地声明变量、方法和类。请帮忙。我不建议用这种方式学习编程语言。我认为对你来说,跟随一本教程或一本书,逐步学习关键

我目前正在学习java,想知道我可以在变量、方法和类之前键入什么类型的关键字

例如,我可以声明一个变量、方法和类,如下所示:

public final int exampleVariable;

public static double exampleMethod () {}

public class exampleClass {}

我还能在这些代码中写些什么?我只是想知道如何具体地声明变量、方法和类。请帮忙。

我不建议用这种方式学习编程语言。我认为对你来说,跟随一本教程或一本书,逐步学习关键词更有用。这是因为一些关键字非常常见,而另一些关键字的用途非常有限。一次了解所有这些对你没有多大帮助

无论如何,如果您确实想知道类、方法和变量声明之前的内容,可以参考。它以非常精确的方式描述了Java语言。例如,根据JLS第8.1节,类声明如下:

NormalClassDeclaration:
    {ClassModifier} class Identifier [TypeParameters] [Superclass] [Superinterfaces] ClassBody
既然你在问什么可以在
之前,我想你对
{ClassModifier}
部分感兴趣:

ClassModifier:
(one of) 
    Annotation public protected private 
    abstract static final strictfp
这意味着在单词
class
之前,可以有0个或多个
ClassModifier
中列出的内容

注意,后面还有一些文字描述了哪些修饰符组合会导致编译时错误

方法见第8.4节。对于局部变量,参见第14.4节。对于字段,参见第8.3节


如果您对用于描述Java语法的语法感到困惑,请参见第2.4节。

与@Azhy评论的类似,本网站用于解决特定问题,而不提供教程。不过,也就是说,我会尽我所能给你你需要的信息

公共/私人/受保护:

这些关键字可以应用于类、变量或方法。它们更改变量的范围(即可以从何处访问变量)。此方便的表格取自此堆栈溢出问题:

静态:

static关键字只能应用于类内的方法和变量。这意味着变量或方法只创建一次,并在类的所有实例之间共享。这允许在多个对象之间共享单个值,并且意味着必须通过类而不是对象来访问静态变量和方法 注意:从技术上讲,类也可以是静态的,但前提是它们是在另一个类声明中声明的,即嵌套类

决赛

此关键字只能应用于变量、方法和类。 最后一个变量是其值不能更改的变量。 最后一个类是不能子类化的类。 最后一个方法是不能被子类重写或隐藏的方法

int/double/void/etc.

当应用于变量时,这些定义变量的类型。当应用于方法时,这些定义了方法必须输出的类型(void表示它不返回任何内容,并且只能应用于方法)


最后,我相信还有很多我个人不知道的。我建议您浏览以下列表:

此网站不是用于提供教程,只是用于解决问题,因此请在其他一些网站(包括TutorialPoint…等)中搜索它。您可以查看JLS:涵盖类声明、涵盖字段声明和涵盖方法声明。
            │ Class │ Package │ Subclass │ Subclass │ World
            │       │         │(same pkg)│(diff pkg)│ 
────────────┼───────┼─────────┼──────────┼──────────┼────────
public      │   +   │    +    │    +     │     +    │   +    
────────────┼───────┼─────────┼──────────┼──────────┼────────
protected   │   +   │    +    │    +     │     +    │         
────────────┼───────┼─────────┼──────────┼──────────┼────────
no modifier │   +   │    +    │    +     │          │    
────────────┼───────┼─────────┼──────────┼──────────┼────────
private     │   +   │         │          │          │    

+ : accessible
blank : not accessible