Java程序的构成
一个Java程序可以认为是一系列对象的集合,而这些对象通过调用彼此的方法来协同工作。
- 对象(Object):对象是类的一个实例,有状态mjmj和行为。例如:一条狗是一个对象,它的状态有颜色、名字、品种;行为有:摇尾巴、叫、吃等。
- 类(class):类是一个模板,它描述一类对象的行为和状态。
- 方法(method):方法就是行为,一个类可以有很多方法。逻辑运算、数据修改以及所有动作都是在方法中完成的。
- 实例变量:每个对象都有独特的实例变量,对象的状态由这些实例变量的值决定。
先来看一下Hello World的代码:
public class HelloWorld {
public static void main(String[] args) {
System.out.println("Hello World!");
}
}
在这里的 Hello World只涉及了类,方法和语句。该Java程序定义了一个类 HelloWorld,该类的名字与 .java文件的名字相同,其中的main方法是程序的入口,而“打印”这个功能是由一个语句实现,即:System.out.println("Hello World!");
。
下面两点有关Java的书写方式:
- Java中的语句要以
;
结尾 - 用花括号
{}
来整合语句,形成程序块。通过程序块,我们可以知道程序的不同部分的范围,比如类从哪里开始,到哪里结束。
Java关键字
Java的关键字是被Java语言赋予了特定含义的单词,他们用来表示一种数据类型,或者表示程序的结构等,关键字不能用作变量名、方法名、类名、包名。
Java关键字有如下表所列,目前共有50个Java关键字,其中“const”和“goto”这两个关键字在Java语言中并没有具体含义:
关键字1.png 关键字2.png
Java标识符
Java语言中,类、变量、常量、方法都需要名字,我们统统称之为Java标识符。
标识符是用来给类、对象、方法、变量、接口和自定义数据类型命名的。
关于Java标识符,有几点需要注意的:
- Java标识符由数字,大小写字母(Java中是区分大小写的)和下划线(_),美元符号($)组成
- 所有的标识符都应该以字母、美元符、或者下划线开始,首位不能是数字
- 关键字不能用作标识符
下面的标识符是合法的:
zhongGuo, Zhong_Guo, $money, _Java_learning, OK, _3th, _3_
下面的标识符是非法的:
#zhongguo, 100years, class, &boy, if
在Java中,还有一些约定成俗的命名规则,希望同学们在写代码的时候都能遵循这些规则:
- 类和接口名。每个字的首个字母大写,含有大小写。例如:MyClass、HelloWorld、Time等
- 方法名。首字符小写,其余的首字母大写,含大小写。尽量少用下划线。例如:myName、setTime等。这种命名方法叫做驼峰式命名。
- 常量名。基本数据类型的常量名使用全部大写字母,字与字之间用下划线分割。对象常量可大小混写。例如:SIZE_NAME。
- 变量名。可大小写混写,首字符小写,字间分隔符用字的首字母大写。不用下划线,少用美元符号。给变量命名是尽量做到见名知意
命名过程中尽量做到见名知意,方便后期查看和修改代码,也方便其他人员的阅读。
变量和常量
在程序中存在大量的数据来代表程序的状态,其中有些数据在程序的运行过程中会发生改变,有些数据在程序运行过程中值不能发生改变,这些数据在程序中分别被叫做变量和常量。
变量
变量代表程序的状态。程序通过改变变量的值来改变整个程序的状态。为了方便地引用变量的值,在程序中需要为变量设定一个名称,这就是变量名。
由于Java语言是一种强类型的语言,所以变量在使用之前必须首先声明。
语法格式
- 数据类型 变量名称; 或者 数据类型 变量名称 = 变量值;
例如:int x =3;
在该语法格式中,数据类型可以是Java语言中任意的类型,如int
,它可以用来不断的存放同一类型的数据,并可以反复使用,变量的类型是固定的,其值是可以被改变的。 - 演示
public class TestDemo {
public static void main(String[] args) {
//定义一个整数型变量i
int i = 10;
System.out.println(i);
//更改变量i的值
i = 15;
System.out.println(i);
}
}
- 测试题
// 交换两个变量的值
public class day2 {
public static void main(String[] args) {
int a = 10;
int b = 20;
int c;
System.out.println("交换前的值:a =" + a + ", b =" + b);
c = a;
a = b;
b = c;
System.out.println("交换后的值:a =" + a + ", b =" + b);
}
}
变量(variable)占据一定的内存空间。不同类型的变量占据不同的大小。Java中的变量类型如下:
Java数据类型.jpg
定义变量的注意事项
1.作用域
- 在Java中一对{}就是一个作用域
- 同一作用域不能使用相同的变量名
- 当前作用域内定义的变量,只能在当前作用域内使用
- 演示
public static void main(String[] args) { int a = 1; //出现错误,当下面有代码需要使用到变量a的时候, jvm不知道用哪一个 int a = 2; System.out.println(a); }
2.初始化值
- 局部变量在使用之前必须要先赋值
- 没有具体的值,使用起来没有意义
- 演示
public static void main(String[] args) { int a; //这里会报错, 如果没有值, 操作a是没有意义的 System.out.println(a); }
3.一条语句可以定义多个相同类型的变量
- 演示
public static void main(String[] args) { //只定义变量不赋值 int a,b,c; //定义变量并赋值 int d =5,f=5; }
Java中主要有如下几种类型的变量:
- 局部变量
- 类变量(静态变量)
- 成员变量(非静态变量)
变量
的概念实际上来自于面向过程的编程语言。在Java中,所谓的变量实际上是基本类型(premitive type)
。
常量
常量代表程序运行过程中不能改变的值。可以理解为特殊的变量,它的值设定后,在程序运行过程中是不可能被改变的。
常量的语法格式和变量类似,只需要在变量的语法格式前面添加关键字final
即可。在Java编码规范中,要求常量名必须大写。
常量的语法格式如下:
- final 数据类型 常量名称 = 值;
- final 数据类型 常量名称1 = 值1, 常量名称2 = 值2, ...常量名称n = 值n;
例如:
final double PI = 3.14;
final char MALE = 'M', FEMALE = 'F';
final String LOVE = "imooc";
在Java语法中,常量也可以首先声明,然后在进行赋值,但是只能赋值一次,示例代码如下:
final int UP;
UP = 1;
final
用于声明属性(常量),方法和类,分别表示属性一旦被分配内存空间就必须初始化,它的含义是“这是无法改变的”或者“终态的”。
程序中,使用常量可以提高代码的可维护性。例如,在项目开发时,我们需要指定用户的性别,此时可以定义一个常量 SEX,赋值为 "男",在需要指定用户性别的地方直接调用此常量即可,避免了由于用户的不规范赋值导致程序出错的情况。
注释
说到注释,在我们写代码的时候,为了方便理解和阅读,往往会在相关的代码附近添加说明文字,也就是我们说的注释。注释是为了防止编译器在编译的时候将我们的注释也一并编译了,导致程序出错,所以在编译的时候,编译器会自动跳过我们编写的注释。
Java的注释格式有三种:
- 行注释
\\
:只在当前行起作用 - 多行注释
/*...*/
:可以在多行都起作用 - 文档注释
/**...*/
:可以标示文档结构,java提供了文档注释扫描工具,可以自动生成文档
下面是演示: - java代码
public class HelloWorld {
/**
* 获取两个整数中最大的那个
* @author 标明开发该类模块的作者,可以写多个,生成的文档中会以","号隔开
* @version 标明该类模块的版本 只能写一次
* @see 参考转向,也就是相关主题
* @param 对方法中某参数的说明
* @return 对方法返回值的说明
* @exception 对方法可能抛出的异常进行说明
*/
public static int getMax(int a,int b){
//比较两个数,将最大整数的赋值给c
int c = a > b?a:b;
/*
* 在注释内容太多的时候, 使用多行注释
*/
return c;
}
}
- dos命令
javadoc HelloWorld.java -d d:\\my
网友评论