ソフトウェア開発において、データ構造についてどのような設計を行うかは、プログラム(アルゴリズム)の効率に大きく影響する。そのため、さまざまなデータ構造が考え出されている。多くのプログラムの設計において、データ構造の選択は主要な問題である。これは大規模システムの構築において、実装の困難さや質、最終的なパフォーマンスはベストのデータ構造を選択したかどうかに大きく依存してきたという経験の結果である。概要.特徴.言語.設計思想.構文.インデントが意味を持つ「オフサイドルール」が特徴的である。インデントによる整形は、単に「見かけ」だけではなく品質そのものにも関係する。例として次のコードを示す。ソースコードを読む際、多くの人はインデントのような空白を元に整列されたコードを読み、コンパイラのように構文解析しながらソースを読むものではない。その結果、一見しただけでは原因を見つけられないバグを作成する危険がある。型システム.値自身が型を持っており、変数はすべて値への参照である。基本的なデータ型として、論理型・整数型・浮動小数点数型・複素数型・文字列型・バイト列型・関数型がある。整数型は(メモリの許す限り)無制限の桁数で整数計算が可能である。浮動小数点数型を整数型にキャストすると、小数点以下が切り捨てられる。型ヒント.例として、文字列型の値を受け取って文字列型の値を返す関数は次のようにアノテーションできる。メモリ管理.オブジェクト指向プログラミング.クラスの継承()メカニズムでは、複数の基底クラスを持つことができ(多重継承)、導出されたクラスでは基底クラスの任意のメソッドをオーバライド(;上書き)することが可能である。標準ライブラリ.組み込み型.多言語の扱い.実行環境.動作環境.ランタイム・コンパイラ.エコシステム.パッケージ管理.ライブラリ.利用.データサイエンスおよび数値計算用途.Webアプリケーション用途.システム管理およびグルー言語用途.教育用.//Javaで記述した「Hello,World!」の例また、文法が簡潔なのでコードを記述している最中に混乱することが少なくなり、子供が途中で諦めてしまう傾向が少ない点も教育用として利用される理由でもある。スポーツパフォーマンス分析.歴史.ライセンス.