基本的な Java 構文
Java プログラムはオブジェクトのコレクションとして考えることができ、これらのオブジェクトは相互にメソッドを呼び出して連携して動作します。以下に、クラス、オブジェクト、メソッド、インスタンス変数の概念を簡単に紹介します。
オブジェクト: オブジェクトはクラスのインスタンスであり、状態と動作を持ちます。たとえば、犬はオブジェクトです。そのステータスには、色、名前、品種が含まれます。また、その行動には、尻尾を振る、吠える、食べるなどがあります。
クラス: クラスは、あるタイプのオブジェクトの動作とステータスを記述するテンプレートです。
メソッド: メソッドは動作であり、クラスには多くのメソッドを含めることができます。論理演算、データ変更、およびすべてのアクションはメソッド内で完了します。
インスタンス変数: 各オブジェクトには固有のインスタンス変数があり、オブジェクトの状態はこれらのインスタンス変数の値によって決まります。
最初の Java プログラム
文字列 Hello World を出力する単純な Java プログラムを見てみましょう
public class MyFirstJavaProgram { /* 第一个Java程序. * 它将打印字符串 Hello World */ public static void main(String []args) { System.out.println("Hello World"); // 打印 Hello World } }
以下では、このプログラムを保存、コンパイル、実行する方法を段階的に説明します:
メモ帳を開き、上記のコードを追加します
ファイル名を MyFirstJavaProgram.java として保存します。
cmd コマンド ウィンドウを開き、ターゲット ファイルの場所を入力します (C であると仮定します)。
コマンド ライン ウィンドウに javac MyFirstJavaProgram.java と入力して、キーを押します。 Enter キーを押してコードをコンパイルします。コードにエラーがない場合、cmd コマンド プロンプトは次の行に進みます。 (環境変数がすべて設定されていると仮定します)。
「java MyFirstJavaProgram」と再入力し、Enter キーを押してプログラムを実行します
ウィンドウに Hello World が表示されます
C : > javac MyFirstJavaProgram.java C : > java MyFirstJavaProgram Hello World
基本構文
Java プログラムを作成するときは、次の点に注意する必要があります:
Case -sensitive: Java では大文字と小文字が区別されます。つまり、識別子 Hello と hello は異なります。
クラス名: すべてのクラスで、クラス名の最初の文字は大文字にする必要があります。クラス名が複数の単語で構成されている場合は、各単語の最初の文字を大文字にする必要があります (例: MyFirstJavaClass )。
メソッド名: すべてのメソッド名は小文字で始まる必要があります。メソッド名に複数の単語が含まれる場合、後続の各単語の最初の文字が大文字になります。
ソースファイル名: ソースファイル名はクラス名と同じである必要があります。ファイルを保存するときは、ファイル名としてクラス名を使用し (Java では大文字と小文字が区別されることに注意してください)、ファイル名の接尾辞 .java を使用する必要があります。 (ファイル名とクラス名が異なる場合はコンパイルエラーとなります)。
Main メソッドのエントリ: すべての Java プログラムは、public static void main(String args[]) メソッドから実行を開始します。
Java 識別子
Java のすべてのコンポーネントには名前が必要です。クラス名、変数名、メソッド名はすべて識別子と呼ばれます。
Java 識別子については、次の注意点があります:
すべての識別子は文字 (A-Z または a-z)、ドル記号 ($)、またはアンダースコア (_) で始まる必要があります
最初の文字の後には、任意の文字の組み合わせを使用できます
キーワードを識別子として使用することはできません
識別子は大文字と小文字が区別されます
正当な識別子の例: age、$salary、_value、__1_value
不正な識別子の例: 123abc、-salary
Java修飾子
他の言語と同様、Java は修飾子を使用してクラス内のメソッドやプロパティを変更できます。修飾子には主に 2 つのタイプがあります:
アクセス可能な修飾子:default、public、protected、private
アクセスできない修飾子:final、abstract、strictfp
Java 修飾子については、次の章で詳しく説明します。
Java変数
Javaには主に以下の種類の変数があります
ローカル変数
クラス変数(静的変数)
メンバー変数(非静的変数)
Java配列
配列はヒープ 同じ型の複数の変数を格納できるオブジェクト。後の章では、配列を宣言、構築、初期化する方法を学びます。
Java 列挙型
Java 5.0 では、変数を事前設定された値に制限する列挙型が導入されました。列挙型を使用すると、コード内のバグを減らすことができます。
例如,我们为果汁店设计一个程序,它将限制果汁为小杯、中杯、大杯。这就意味着它不允许顾客点除了这三种尺寸外的果汁。
实例
class FreshJuice { enum FreshJuiceSize{ SMALL, MEDUIM, LARGE } FreshJuiceSize size; } public class FreshJuiceTest { public static void main(String args[]){ FreshJuice juice = new FreshJuice(); juice.size = FreshJuice. FreshJuiceSize.MEDUIM ; } }
注意:枚举可以单独声明或者声明在类里面。方法、变量、构造函数也可以在枚举中定义。
Java关键字
下面列出了Java保留字。这些保留字不能用于常量、变量、和任何标识符的名称。
关键字
描述
abstract 抽象方法,抽象类的修饰符
assert 断言条件是否满足
boolean 布尔数据类型
break 跳出循环或者label代码段
byte 8-bit 有符号数据类型
case switch语句的一个条件
catch 和try搭配扑捉异常信息
char 16-bit Unicode字符数据类型
class 定义类
const 未使用
continue 不执行循环体剩余部分
default switch语句中的默认分支
do 循环语句,循环体至少会执行一次
double 64-bit双精度浮点数
else if条件不成立时执行的分支
enum 枚举类型
extends 表示一个类是另一个类的子类
final 表示一个值在初始化之后就不能再改变了
表示方法不能被重写,或者一个类不能有子类
finally 为了完成执行的代码而设计的,主要是为了程序的健壮性和完整性,无论有没有异常发生都执行代码。
float 32-bit单精度浮点数
for for循环语句
goto 未使用
if 条件语句
implements 表示一个类实现了接口
import 导入类
instanceof 测试一个对象是否是某个类的实例
int 32位整型数
interface 接口,一种抽象的类型,仅有方法和常量的定义
long 64位整型数
native 表示方法用非java代码实现
new 分配新的类实例
package 一系列相关类组成一个包
private 表示私有字段,或者方法等,只能从类内部访问
protected 表示字段只能通过类或者其子类访问
子类或者在同一个包内的其他类
public 表示共有属性或者方法
return 方法返回值
short 16位数字
static 表示在类级别定义,所有实例共享的
strictfp 浮点数比较使用严格的规则
super 表示基类
switch 选择语句
synchronized 表示同一时间只能由一个线程访问的代码块
this 表示调用当前实例
或者调用另一个构造函数
throw 抛出异常
throws 定义方法可能抛出的异常
transient 修饰不要序列化的字段
try 表示代码块要做异常处理或者和finally配合表示是否抛出异常都执行finally中的代码
void 标记方法不返回任何值
volatile 标记字段可能会被多个线程同时访问,而不做同步
while while循环
Java注释
类似于C/C++,Java也支持单行以及多行注释。注释中的字符将被Java编译器忽略。
public class MyFirstJavaProgram{ /* 这是第一个Java程序 *它将打印Hello World * 这是一个多行注释的示例 */ public static void main(String []args){ // 这是单行注释的示例 /* 这个也是单行注释的示例 */ System.out.println("Hello World"); } }
Java 空行
空白行,或者有注释的的行,Java编译器都会忽略掉。
继承
Java では、クラスは他のクラスから派生できます。クラスを作成するときに、必要なプロパティまたはメソッドを持つクラスがすでに存在する場合は、そのクラスから新しく作成したクラスを継承できます。
継承を使用すると、これらのコードを書き直すことなく、既存のクラスのメソッドとプロパティを再利用できます。継承されたクラスをスーパークラス、派生クラスをサブクラスと呼びます。
インターフェース
Java では、インターフェースはオブジェクト間の通信のためのプロトコルとして理解できます。インターフェイスは継承において非常に重要な役割を果たします。
インターフェイスは派生によって使用されるメソッドを定義するだけですが、メソッドの具体的な実装は完全に派生クラスに依存します。
次のセクションでは、Java プログラミングのクラスとオブジェクトを紹介します。その後、Java のクラスとオブジェクトをより明確に理解できるようになります。
上記は基本的な Java 構文の内容です。その他の関連内容については、PHP 中国語 Web サイト (www.php.cn) に注目してください。