簡體   English   中英

聲明變量,方法和類?

[英]Declaring variables, methds and classes?

我目前正在學習Java,想知道可以在變量,方法和類之前鍵入什么樣的關鍵字?

例如,我可以聲明一個變量,方法,類,如下所示:

public final int exampleVariable;

public static double exampleMethod () {}

public class exampleClass {}

這些代碼還能寫些什么? 我只是想知道如何特別地聲明變量,方法和類。 請幫忙。

我不建議以這種方式學習編程語言。 我認為,按照教程或書並逐步學習關鍵字的方法,對您來說更有用。 這是因為某些關鍵字非常普遍,而另一些關鍵字的使用卻非常有限。 一次了解所有這些信息對您沒有多大幫助。

無論如何,如果您真的想知道類,方法和變量聲明之前的內容,可以參考Java Language Specification 它以非常精確的方式描述了Java語言。 例如,根據JLS第8.1節,類聲明是這樣的:

NormalClassDeclaration:
    {ClassModifier} class Identifier [TypeParameters] [Superclass] [Superinterfaces] ClassBody

由於您在問class之前可以做什么,我想您對{ClassModifier}部分感興趣:

ClassModifier:
(one of) 
    Annotation public protected private 
    abstract static final strictfp

這意味着在單詞class之前, ClassModifier列出0個或多個對象。

請注意,此后還有一些文字描述了修飾符的哪些組合會導致編譯時錯誤。

對於方法,請參見第8.4節。 對於局部變量,這是第14.4節。 對於字段,請參見第8.3節。

如果您對用來描述Java語法的語法感到困惑,請參閱2.4節。

就像@Azhy評論的一樣,該網站用於解決特定問題而不提供教程。 但是,話雖如此,我會盡力為您提供所需的信息。

公共/私營/保護:

這些關鍵字可以應用於類,變量或方法。 它們更改變量的范圍(即可以從中訪問變量的位置)。 這個方便的表來自以下堆棧溢出問題: Java中public,protected,package-private和private之間有什么區別?

            │ Class │ Package │ Subclass │ Subclass │ World
            │       │         │(same pkg)│(diff pkg)│ 
────────────┼───────┼─────────┼──────────┼──────────┼────────
public      │   +   │    +    │    +     │     +    │   +    
────────────┼───────┼─────────┼──────────┼──────────┼────────
protected   │   +   │    +    │    +     │     +    │         
────────────┼───────┼─────────┼──────────┼──────────┼────────
no modifier │   +   │    +    │    +     │          │    
────────────┼───────┼─────────┼──────────┼──────────┼────────
private     │   +   │         │          │          │    

+ : accessible
blank : not accessible

靜態的:

static關鍵字只能應用於類內部的方法和變量。 這意味着變量或方法僅創建一次,並且在類的所有實例之間共享。 這允許在多個對象之間共享一個值,這意味着必須通過類而不是對象來訪問靜態變量和方法。注意:從技術上講,類也可以是靜態的,但前提是必須在另一個類聲明中聲明它們,即嵌套類

最后

此關鍵字只能應用於變量,方法和類。 最后一個變量是價值不變的變量。 最后一類是不能被子類化的類。 最終方法是不能被子類覆蓋或隱藏的方法。

INT /雙/空/等。

當應用於變量時,它們定義變量的類型。 當應用於方法時,它們定義了方法必須輸出的類型(void表示它不返回任何內容,並且只能應用於方法)

最后,我確定還有很多我個人不知道的東西。 我建議瀏覽以下列表: https : //en.wikipedia.org/wiki/List_of_Java_keywords

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM