簡體   English   中英

Java 被強類型化

[英]Java being strongly typed

我在一些 class 筆記中遇到了這一部分:

在此處輸入圖像描述

Java 程序是所謂的靜態和強類型。

我熟悉 static 或動態類型的概念,但沒有遇到強/弱類型,並且在查找它們時總是有一些空洞的定義。

在上面,Java 是如何強類型化的示例是什么? 這是否只是意味着您不能將一種類型轉換為另一種類型(但是將int轉換為long或相同概念類型的東西呢)? 強/弱類型的概念與 Java 有什么關系?

弱類型語言中,無關數據類型之間的轉換是隱式的。

例如 JavaScript 是弱類型語言:

var x = 22;
var y = x + "example";
console.log(y);  # prints 22example as an instance of String object
# Here the value of x got converted to string without any explicit conversion by the programmer.

強類型語言正好相反。 您可以在強類型語言中進行類型轉換,但它們不是隱式的。 您必須明確地執行它們。

例如 Java 是一種強類型語言:

int x = 2;
Long y = x; # Will throw compilation error
# However you can do something like below example
Long y = new Long(x);
# There are other ways to do type conversion in java for different data types, but they are not implicit, you gotta do them explicitly.

我希望這回答了你的問題。

強類型意味着,變量的數據類型必須在程序中定義。 此數據類型將在編譯時固定。 與松散類型不同,在程序中不為變量聲明數據類型。 在這些情況下,數據類型是在運行時分配的。

Javascript 是一種松散的動態類型語言。 在這里我們聲明如下: var age="old"; var 收入 = 4000000; 在這里,年齡將被設為字符串類型,收入將在 JS 運行時設為數字類型。

希望 Java 和 JavaScript 之間的對比有助於理解這個概念。

暫無
暫無

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

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