一个Java程序可以认为是一系列对象的集合,而这些对象通过调用彼此的方法来协同工作。下面介绍下类、对象、方法和实例变量的概念
对象:对象是类的一个实例,有状态和行为。
类:类是一个模板,他是描述一类对象的行为和状态。
方法:方法就是行为,一个类可以有很多方法。逻辑运算、数据修改以及所有动作都是在方法中完成的
第一个JAVA程序
下面看一个简单的Java程序,它将输出字符串Hello World
public class HelloWorld{
public static void main(String args[]){
System.out.println("Hello World");
}
}
下面将逐步介绍如何保存、编译以及运行这个程序
打开代码编辑器,把上面的代码添加进去
把文件名保存为:HelloWorld.java;
打开cmd命令窗口,进入目标所在位置
在命令行窗口输入javac HelloWorld.java 按下回车编译代码。如果代码没错,cmd命令提示符进入下一行
在输入java HelloWorld 按下回车键就可以运行程序了。
基础语法
编写Java程序时,注意一下几点
大小写敏感:Java是大小写敏感的,这就意味着标识符Hello与hello是不同的
类名:对于所有的类来说,类名的首字母应该大写。如果是由若干单词组成,那么每个单词的首字母应该大写,例如MyFirstJavaClass。
方法名:所有的方法名都应该以小写字母开头,如果方法名含有若干单词,泽后面的单词首字母大写。
源文件名:源文件名必须和类名相同。当保存文件的时候,你应该使用类名作为文件名保存(切记Java是大小写敏感的),文件名的后缀是.java。
主方法入口:所有的Java程序邮public static void main(String args[])方法开始执行。
Java标识符
Java所有的组成部分都需要名字。类名、变量名以及方法名都被成为标识符
关于Java标识符,有一下几点需要注意:
所有的标识符都应该以字母(A-Z或者a-z),美元符($)或者下划线(_)开始
首字母之后可以是(A-Z或者a-z),美元符($)或者下划线(_)或数字的任何字符组合
富案件自不能用作标识符
标识符是大小写敏感的
Java修饰符
像其他语言一样,Java可以使用修饰符来修饰类中方法和属性,主要有两种修饰类:
访问控制修饰符:default,public,protected,private
非访问控制修饰符:final,abstract,static,synchronized
Java变量
Java中主要有如下几种类型的变量
局部变量
类变量(静态变量)
成员变量(非静态变量)
Java数组
数组是存储在对上的对象,可以保存多个同类型变量。
Java枚举
Java5.0引入了枚举,枚举限制变量只能是预先设定好的值,使用枚举可以减少代码中的BUG
例如,我们为果汁店涉及一个程序,它将限制果汁为小杯、中杯、大杯。这就意味着它不允许顾客点除了这三种尺寸外的果汁。
class FreshJuice{
enum FreshJuiceSize{ SMALL,MEDIUM,LARGE }
FreshJuice size;
}
public vlass FreshJuiceTest{
public static void main(String args[]){
FreshJuice juice = new FreshJuice();
juice.size = FreshJuice.FreshJuiceSize.MEDIUM;
}
}
注意:枚举可以单独声明或者声明在类里边。方法、变量、构造函数也可以在枚举中定义。
Java 关键字
下面列出了 Java 关键字。这些保留字不能用于常量、变量、和任何标识符的名称。
类别 | 关键字 | 说明 |
---|---|---|
访问控制 | private | 私有的 |
protected | 受保护的 | |
public | 公共的 | |
default | 默认 | |
类、方法和变量修饰符 | 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 | 是关键字,但不能使用 |
Java注释
类似于C/C++、Java也支持单行以及多行注释。注释中的字符将被Java编译器忽略
Java空行
空白行或者有注释的行,Java编译器都会或略掉
继承
在Java中,一个类可以由其他类派生。如果你想要创建一个类,而且已经存在一个类具有你所需要的属性或方法,那么你可以将新创建的类继承该类。
利用继承的方法,可以重用已存在类的方法和属性,而不用重写这些代码。被继承的类成为超类(super class),派生类称为子类(subclass)。
接口
在Java中,接口可理解为对象间相互通信的协议。接口再继承中扮演着很重要的角色。
接口只定义派生要用到的方法,但是方法的具体实现完全取决于派生类。