一个 Java 程序可以认为是一系列对象的集合,而这些对象通过调用彼此的方法来协同工作。下面简要介绍下类、对象、方法和实例变量的概念。
下面看一个简单的 Java 程序,它将打印字符串: Hello World
public class HelloWorld {
/**
* 第一个Java程序
* 它将打印字符串: Hello World
*/
public static void main(String[] args) {
System.out.println("Hello World"); // 打印 Hello World
}
}
下面将逐步介绍如何保存、编译以及运行这个程序:
HelloWorld.java
;cmd
命令窗口,进入目标文件所在的位置,假设是 C:\
javac HelloWorld.java
按下回车键编译代码。如果代码没有错误,cmd 命令提示符会进入下一行(假设环境变量都设置好了)。java HelloWorld
按下回车键就可以运行程序了你将会在窗口看到 Hello World
C : > javac HelloWorld.java
C : > java HelloWorld
Hello World
编写 Java 程序时,应注意以下几点:
Hello
与 hello
是不同的。MyFirstJavaClass
。.java
。(如果文件名和类名不相同则会导致编译错误)。public static void main(String[] args)
方法开始执行。Java 所有的组成部分都需要名字。类名、变量名以及方法名都被称为标识符。
关于 Java 标识符,有以下几点需要注意:
A-Z
或者 a-z
),美元符($
)、或者下划线(_
)开始A-Z
或者 a-z
),美元符($
)、下划线(_
)或数字
的任何字符组age
、$salary
、_value
、__1_value
123abc
、-salary
像其他语言一样,Java 可以使用修饰符来修饰类中方法和属性。主要有两类修饰符:
访问控制修饰符:
非访问控制修饰符:
在后面的章节中我们会深入讨论 Java 修饰符。
Java 中主要有如下几种类型的变量:
数组是储存在堆上的对象,可以保存多个同类型变量。在后面的章节中,我们将会学到如何声明、构造以及初始化一个数组。
Java 5.0 引入了枚举,枚举限制变量只能是预先设定好的值。使用枚举可以减少代码中的 bug。
例如,我们为果汁店设计一个程序,它将限制果汁为小杯
、中杯
、大杯
。这就意味着它不允许顾客点除了这三种尺寸外的果汁。
实例:
class FreshJuice {
enum FreshJuiceSize{ SMALL, MEDIUM , LARGE }
FreshJuiceSize size;
}
public class FreshJuiceTest {
public static void main(String[] args){
FreshJuice juice = new FreshJuice();
juice.size = FreshJuice.FreshJuiceSize.MEDIUM ;
}
}
注意:枚举可以单独声明或者声明在类里面。方法、变量、构造函数也可以在枚举中定义。
下面列出了 Java 关键字。这些保留字不能用于常量、变量、和任何标识符的名称。
类别 | 关键字 | 说明 |
---|---|---|
访问控制 | private | 私有的 |
. | protected | 受保护的 |
. | public | 公共的 |
类、方法和变量修饰符 | abstract | 声明抽象 |
. | class | 类 |
. | extends | 扩充,继承 |
. | final | 最终值,不可改变的 |
. | implements | 实现(接口) |
. | interface | 接口 |
. | native | 本地,原生方法(非 Java 实现) |
. | new | 新,创建 |
. | static | 静态 |
. | strictfp | 严格,精准 |
. | synchronized | 线程,同步 |
. | transient | 短暂 |
. | volatile | 易失 |
程序控制语句 | break | 跳出循环 |
. | case | 定义一个值以供 switch 选择 |
. | continue | 继续 |
. | default | 默认 |
. | do | 运行 |
. | else | 否则 |
. | for | 循环 |
. | if | 如果 |
. | instanceof | 实例 |
. | return | 返回 |
. | switch | 根据值选择执行 |
. | while | 循环 |
错误处理 | assert | 断言表达式是否为真 |
. | catch | 捕捉异常 |
. | finally | 有没有异常都执行 |
. | throw | 抛出一个异常对象 |
. | throws | 声明一个异常可能被抛出 |
. | try | 捕获异常 |
包相关 | import | 引入 |
. | package | 包 |
基本类型 | boolean | 布尔型 |
. | byte | 字节型 |
. | char | 字符型 |
. | double | 双精度浮点 |
. | float | 单精度浮点 |
. | int | 整型 |
. | long | 长整型 |
. | short | 短整型 |
变量引用 | super | 父类,超类 |
. | this | 本类 |
. | void | 无返回值 |
保留关键字 | goto | 是关键字,但不能使用 |
. | const | 是关键字,但不能使用 |
. | null | 空 |
类似于 C/C++
、Java
也支持单行以及多行注释。注释中的字符将被 Java 编译器忽略。
public class HelloWorld {
/**
* 这是第一个Java程序
* 它将打印Hello World
* 这是一个多行注释的示例
*/
public static void main(String[] args){
// 这是单行注释的示例
/* 这个也是单行注释的示例 */
System.out.println("Hello World");
}
}
空白行或者有注释的行,Java 编译器都会忽略掉。
在 Java 中,一个类可以由其他类派生。如果你要创建一个类,而且已经存在一个类具有你所需要的属性或方法,那么你可以将新创建的类继承该类。
利用继承的方法,可以重用已存在类的方法和属性,而不用重写这些代码。被继承的类称为超类(super class
),派生类称为子类(sub class
)。
在 Java 中,接口可理解为对象间相互通信的协议。接口在继承中扮演着很重要的角色。
接口只定义派生要用到的方法,但是方法的具体实现完全取决于派生类。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。