一、了解java程序类基本结构,和入口方法的位置
public class Hello {
public static void main(String[] args) {
System.out.println("Hello World");
}
}
一个程序的基本单位是class,class是关键字,这里定义的class名字是Hello(类名是Hello),
类名要求:1>,类名必须是英文字母开头,后接字母、数字、下划线的组合;2》,习惯以大写字母开头。
public 是访问修饰符,表示该class是公开的,在class内部,可以定义若干个方法method,这里的方法名是main,返回值是void ,表示没有任何返回值,public除了可以修饰class,也可以修饰方法,关键字static是一个修饰符,他表示静态方法,java入口程序规定的方法必须是静态方法,方法名字必须是main, 括号内的参数必须是 String[] ;
方法名命名规则和class一样,但是首字母小写,Java的每一行代码必须以分号结尾;
Java的三种注释:单行注释(1),多行注释(2);
单行注释以 双斜线开头;
多行注释可以以 /* 开始,以*/ 结束;也可以以/** 开始,以*/ 结束;
二、掌握三种注释的写法和javadoc.exe生成api
idea tools菜单Generate JavaDoc...
三、了解java标识符、关键字、保留字
1.标识符(identifier)是指用来标识某个实体的一个符号,在不同的应用环境下有不同的含义。 在计算机编程语言中,标识符是用户编程时使用的名字,用于给变量、常量、函数、语句块等命 名,以建立起名称与使用之间的关系。标识符是由字母 数字 下滑线 $组成的,不能数字开头,不能使用空格和特殊的符号。
例如:
合法:Dog _price $123
非法:1abc .ACD
2.保留字(reserved word),指在高级语言中已经定义过的字,使用者不能再将这些字作为变量名 或过程名使用。 保留字包括关键字和未使用的保留字。
3.关键字则指在语言中有特定含义,成为语法中一部分的那些字。在一些语言中,一些保留字可能并没有应用于当前的语法中,这就成了保留字与关键字的区别。一般出现这种情况可能是由于考 虑扩展性。例如,Javascript有一些未来保留字,如abstract、double、goto等等。
关键字 | 含义 |
abstrac | 表明类或者成员方法具有抽象属性 |
assert | 断言,用来进行程序调试 |
boolean | 基本数据类型之一,声明布尔类型的关键字 |
break | 提前跳出一个块 byte 基本数据类型之一,字节类型 |
case | 用在switch语句之中,表示其中的一个分支 |
catch | 用在异常处理中,用来捕捉异常 |
char | 基本数据类型之一,字符类型 |
class | 声明一个类 |
const | 保留关键字,没有具体含义 |
continue | 回到一个块的开始处 |
default | 默认,例如,用在switch语句中,表明一个默认的分支 |
do | 用在do-while循环结构中 |
double | 基本数据类型之一,双精度浮点数类型 |
else | 用在条件语句中,表明当条件不成立时的分支 |
enum | 枚举 |
extends | 表明一个类型是另一个类型的子类型。对于类,可以是另一个类或者抽象类;对 于接口,可以是另一个接口 |
final | 用来说明最终属性,表明一个类不能派生出子类,或者成员方法不能被覆盖,或 者成员域的值不能被改变,用来定义常量 |
finally | 用于处理异常情况,用来声明一个基本肯定会被执行到的语句块 |
float | 基本数据类型之一,单精度浮点数类型 |
for | 一种循环结构的引导词 |
goto | 保留关键字,没有具体含义 |
if | 条件语句的引导词 |
implements | 表明一个类实现了给定的接口 |
mport | 表明要访问指定的类或包 |
nstanceof | 用来测试一个对象是否是指定类型的实例对象 |
nt | 基本数据类型之一,整数类型 |
nterface | 接口 |
long | 基本数据类型之一,长整数类型 |
native | 用来声明一个方法是由与计算机相关的语言 |
new | 用来创建新实例对象 |
package | 包 |
private | 一种访问控制方式:私用模式 |
protected | 一种访问控制方式:保护模式 |
public | 一种访问控制方式:共用模式 |
return | 从成员方法中返回数据 |
short | 基本数据类型之一,短整数类型 |
static | 表明具有静态属性 |
strictfp | 用来声明FP_strict(单精度或双精度浮点数)表达式遵循IEEE 754算术规范 |
super | 表明当前对象的父类型的引用或者父类型的构造方法 |
switch | 分支语句结构的引导词 |
synchronized | 表明一段代码需要同步执行 |
this | 指向当前实例对象的引用 |
throw | 抛出一个异常 |
throws | 声明在当前定义的成员方法中所有需要抛出的异常 |
transient | 声明不用序列化的成员域 |
try | 尝试一个可能抛出异常的程序块 |
void | 声明当前成员方法没有返回值 |
volatile | 表明两个或者多个变量必须同步地发生变化 |
var | java10新增的关键字,用来推断类型 var i = 20; |
while | 用在循环结构中 |
四、java有没有goto、const语句?
const 和 go 是保留关键字, 虽然没有正式使用, 但是你也不能把它们作为标识符. true, false 和 null 虽然看上去像关键字, 但是它们实际上是 literals, 它们也不能作为标识符使用.
五、常量?
指在程序执行期间其值不能发生变化的数据。例如数学中的π= 3.1415……又如:整数123,小数1.23,字符’A’,布尔常量 true、false等,程序开发中,常量名一般规则全部大写,声明常量时必须赋值,以后只能使用,不能再赋值,java语言声明常量使用final。
在程序开发中,常量名一般全部大写,java声明常量时必须赋值,以后只能使用,使用final关键字
六、变量
变量:是指值在程序运行期间可以被改变的量。变量用于储存信息。它指向内存的某个单元,而且指明了这块内存有多大。java是强类型,变量必须先声明初始化才可以使用。java程序中,变量名是区分大小写。
java 10 var 类型推断声明变量
七、数据类型和类型转换
数据类型
Java支持数据类型分为两类: 基本数据类型和引用数据类型。
基本数据类型共有8种,可以分为三类:
数值型:整数类型(byte、short、int、long)和浮点类型(float、double)
字符型:char
布尔型:boolean
8种基本数据类型的默认值、位数、取值范围,如下表所示:
float和double的最小值和最大值都是以科学记数法的形式输出的,结尾的“E+数字”表示E之前的数字要乘以10的多少倍。比如3.14E3就是3.14×1000=3140,3.14E-3就是3.14/1000=0.00314。
注意一下几点:
java八种基本数据类型的字节数:1字节(byte、boolean)、 2字节(short、char)、4字节(int、float)、8字节(long、double)
浮点数的默认类型为double(如果需要声明一个常量为float型,则必须要在末尾加上f或F)
整数的默认类型为int(声明Long型在末尾加上l或者L)
八种基本数据类型的包装类:除了char的是Character、int类型的是Integer,其他都是首字母大写
char类型是无符号的,不能为负,所以是0开始的
f F 、l L 、dD
类型转换
自动类型转换隐式转换
转换规则:从存储范围小的类型到存储范围大的类型。简言之,由低到高。 具体规则为:byte→short(char)→int→long→float→double
强制类型转换(float)3.5;
八、算数运算符
运算符:是一种特殊符号,用以表示数据的运算、赋值和比较。
表达式:使用运算符将运算数据连接起来的符合Java语法规则的式子。
int i = 20*30;
算术运算符
+ - * /整除求整商 %取余 ++ --
运算符 | 描述 | 范例 | 结果 |
+ | 正号 | +3 | 3 |
+ | 加 | 2+3 | 5 |
+ | 字符串连接 | "hello" + 2 | hello2 |
- | 负号 | -5 | -5 |
- | 减 | 5-2 | 3 |
* | 乘积 | 2*3 | 6 |
/ | 整除,求整商 | 5/3 | 1 |
% | 取余 | 5%3 | 2 |
++ | 自加 | int i=0;i++;++i; | i = 2 |
-- | 自减 | int i=0;i--;--i; | i = -2 |