第1天 Java基础语法

今日内容介绍

u Java开发环境搭建

u HelloWorld案例

u 注释、关键字、标识符

u 数据(数据类型、常量)

第1章 Java开发环境搭建

1.1 Java概述

众所周知Java是一门编程语言,编程语言就是用来编写软件的。那么使用Java到底能用来编写什么软件呢?你所熟知的很多软件都可以用Java来编写,例如:QQ、迅雷、淘宝、京东等等,那么Java比较擅长什么呢?也就是说我们将来从事Java开发工程师工作到底要编写什么类型的软件呢?

答案是:

  1. 互联网:电商、P2P等等;
  2. 企业级应用:ERP、CRM、BOS、OA等等。

互联网类软件大家都比较熟悉,因为大家生活都可以接触得到。而企业级应用都是为大型企业量身定做的软件,用于工作中,所以大家可能不太了解。现在大家只需对Java开发工程师工作有个大致的了解即可。

在基础班我们会学习Java的基础知识,即JavaSE(标准版)部分。学习完JavaSE并不能开发大型项目。

在就业班我们会学习Java的高级知识以及整个Java生态圈,即JavaEE(企业版)部分。学习完JavaEE部分就可以开发各种大型项目了。

1.2 常用DOS命令 

编写源文件后就需要开始编译操作了,但在Windows操作系统中编译、运行都需要了解常用DOS命令,所以下面我们来学习一下常用DOS命令(DOS命令是Windows操作系统包含的知识)。

DOS命令是在DOS控制台中使用的命令,弹出DOS控制台的方法是:win+R,然后输出cmd,是不是看起来有点熟悉,没错,就是校验JDK安装是否成功是弹出的小黑屏。

DOS命令有很多,我们不需要学习所有DOS命令,只需要学习我们Java中要用到的常用DOS命令,内容如下:

l 清屏:cls;

n 当DOS控制台内容过多时,可以使用清屏命令,等同与“擦黑板”;

n 例如:C:\ >cls,然后按回车键。

l 切换盘符::;

n 默认情况下我们是在C盘中,如果想去其他盘符可以使用该命令;

n 例如:C:\ >E:,然后按回车键就到了E盘下。

l 进入指定目录:cd;

n 当我们想进入某个目录时可以使用该命令;

n 例如:D:\>cd develop,这样就进入了D:\develop目录,当然你需要保证这个目录是存在的;

n 例如:D:\>cd develop\Java,这样就进入了D:\develop\Java目录。

l 返回上一级目录:cd..;0

n 当你需要返回到上一级目录时可以使用该命令;

n 例如:D:\develop\Java>cd..,然后按回车,就会返回到D:\develop目录下。

l 返回盘符根目录:cd\;

n 当需要返回到当前盘符根目录下可以使用该命令;

n 例如:D:\develop\Java>cd\,然后按回车,这样就返回到D:/目录下了。

l 显示当前目录下的文件和子目录信息:dir;

n 当需要查看当前目录下所有文件和子目录信息时可以使用该命令;

l 运行应用程序:程序完整名称 参数

n 当需要运行某个应用程序时可以使用该命令;

n 例如要运行记事本程序时:D:\>C:\windows\notepad.exe,这样就打开了记事本程序,这与你到C:\windows目录下双击该程序图标的效果相同,因为该程序支持双击运行;

n 还可以省略“.exe”后缀,例如:D:\>C:\windows\notepad,效果同上;

1.3 Java开发环境概述

在开始学习Java编程之前,我们首先需要安装Java开发环境(JDK:Java开发工具包 Java Development Kit)。

你可能会问:“我们为什么要安装JDK呢”,其实任何事物都需要有他的最基本的生存环境,就像人类也需要最基本的生存环境(天、地、水、空气……)。开发Java程序也不能例外,它也需要最基本的“生存环境”,就是Java开发环境(JDK)。

至于JDK中都包含了什么东西,现在还不是讲解的时候。我们现在的任务就是马上把它下载、安装,并校验安装是否成功。

我们课程中使用的JDK版本是JDK7,当前最新版本是JDK8。

1.4 JDK下载&安装&校验

JDK的下载和安装请各位严格按照《JDK下载安装文档0.doc》中的要求操作,如果没有按照要求操作可能会引起意想不到的问题。这里就不再赘述!

下面我们来聊聊如何校验JDK安装是否成功的方法。你无需了解为什么要这么做,只需要严格按照下面的步骤操作即可:

  1. 在键盘上按:WIN+R键,这时会弹出运行窗口;
  2. 在运行窗口中输入:CMD,按“确定”按钮,这时会弹出DOS窗口;
  3. 在DOS窗口中输入:JDK安装路径\bin\java.exe。

如果结果与图片中相同,恭喜你,安装成功;否则安装失败!!!下面给出最常见的安装失败样例:

  1. 系统找不到指定的路径:可能是因为JDK安装路径输入错误;
  2. 不是内部或外部命令,也不是可运行的程序或批处理文件:安装失败。

1.5 JDK与JRE

在安装的过程中各位可能注意到了JRE这个名词,下面我们来聊聊JDK和JRE的关系和区别。

l JDK:它是Java开发运行环境,在程序员的电脑上当然要安装JDK;

l JRE:Java Runtime Environment它是Java运行环境,如果你不需要开发只需要运行Java程序,那么你可以安装JRE。例如程序员开发出的程序最终卖给了用户,用户不用开发,只需要运行程序,所以用户在电脑上安装JRE即可。

l JDK包含了JRE。

1.6 跨平台特性

l 平台指的是操作系统 (Windows,Linux,Mac)。

l Java程序可以在任意操作系统上运行,一次编写到处运行

l 实现跨平台需要依赖Java的虚拟机 JVM (Java Virtual Machine)

第2章 Hello World案例

2.1 Java程序介绍

在开始案例之前,我们需要了解一下Java应用程序的编写流程。

通过上图我们可以了解到编写的程序大致如下;

  1. 源文件:编写Java源文件(我们也称之为源代码文件),它的扩展名为.java;
  2. 编译:然后通过编译器把源文件编译成字节码文件,字节码文件扩展名为.class;
  3. 运行:最后使用解释器来运行字节码文件。

编译和运行操作需要使用DOS命令,所以在编写源代码文件之后,我们要学习常用DOS命令,再去学习编译和运行。

2.2 源代码编写

2.2.1 创建HelloWorld.java文件

  Java源代码编写只需要使用最普通的文本编辑器编写即可,例如Windows系统自带的notepad即可。如果你不知道什么是notepad,那么你可以在空白处点击鼠标右键à新建à文本文档来创建文本文件。

然后修改文件名称为HelloWorld.java,注意文件名称的大小写。以及是否已经修改了文件的扩展名。

如果看不到文件后缀名,可通过窗口上方“查看”菜单中的“文件夹选择”找到“查看”选项卡,在“查看选择卡”的高级设置找到“隐藏已知文件类型的扩展名”选项,去掉前面的勾,点击“确定”即可显示文件后缀名了。如下图

2.2.2 编写源程序代码

下面是完整的内容:

HelloWorld.java

public class HelloWorld {

public static void main(String[] args) {

System.out.println("HelloWorld");

}

}

注意,大家在编写源代码时一定要注意大小写。总而言之,一模一样就对了。

下面我们对源代码进行解析,HelloWorld案例的源代码一共分为三个部分,分别是:主方法,以及输出语句

  类是最外层的部分,其中public class是必须要写的命令,其中HelloWorld是类名称,要求必须与源文件名称相同。因为我们的源文件名称为HelloWorld.java,所以类名称必须是HelloWorld。类有一对大括号,类的内容存放在这对大括号中。你可能会问什么是类,我的答案是先不要去管什么是类,现在你需要记下来下面的代码,即定义类的语法。

public class HelloWorld {

}

主方法是类的内容,所以主方法放到类的大括号中。现在我们不需要了解更多,只需要把主方法的内容背下来即可。主方法也有一对大括号,用来存放主方法的内容。

public static void main(String[] args) {

}

输出语句是主方法的内容,所以输出语句需要放到主方法的大括号中。输出语句也需要背下来。输出语句最后有一对圆括号,在圆括号中有一语话用双引号括起来:Hello World!。在程序运行时会输出它。

System.out.println("HelloWorld!");

  

到这里我们的源代码就已经编写完毕了,还要再次提醒大家编写源代码时要注意大小写。文件名称和文件内容都要注意大小写。

2.3 编译源代码文件

学习完DOS命令后我们就可以来学习编译源代码文件了。编译操作需要使用编译器来完成,在安装JDK时已经安装了编译器,它属于JDK的一部分。可以到JDK目录下的bin目录下找到它,它的名称为:javac.exe。

注意,javac.exe并不支持双击运行,所以必须使用DOS命令来运行它。

下面我们来介绍一下使用编译器来编译Java源文件的格式:

格式:编译器程序完整名称 源文件完整名称

让我们来分析一下:

l 我的JDK安装在D:\develop\Java\jdk1.7.0_72目录,那么编译器完整名称为:D:\develop\Java\jdk1.7.0_72\bin\javac.exe;

l 我的源文件存放在:D:\java\HelloWorld.java;

l 编译命令为:D:\develop\Java\jdk1.7.0_72\bin\javac.exe D:\java\HelloWorld.java。

编译之后会在源文件同目录下生成字节码文件,字节码文件的扩展名为.class。

请注意,在编译时控制台上不会有输出,如果有输出说明源代码有错误,所以大家一旦编译出错,就要去查看源文件中是否存在错误。

2.4 运行字节码文件

运行字节码文件需要使用java.exe命令,它与javac.exe在同一目录下。与javac.exe相同,java.exe也不支持双击运行,所以也必须要使用DOS命令来运行。运行字节码文件与编译有点区别:

l 进行字节码文件所在目录:即进入D:\java目录;

l D:\develop\Java\jdk1.7.0_72\bin\java.exe HelloWord;

注意,在运行HelloWorld.class文件时不能给出“.class”,切记!!!

2.5 简化编译和运行操作

我们发现每次程序编译与运行都要输入D:\develop\Java\jdk1.7.0_72\bin后,才能使用javac.exe与java.exe,这样的方式很麻烦,那么,能否不输入D:\develop\Java\jdk1.7.0_72\bin呢?是可以的,通过配置Windows的PATH环境变量来完成。

PATH变量中保存着多个路径,当我们在DOS控制台中使用的程序只给出程序名称,而没有给出完整路径时,那么Windows系统会到PATH变量保存的路径中去查找程序。我们如果把“D:\develop\Java\jdk1.7.0_72\bin”路径保存到PATH变量中,那么在我们使用javac或java时,Windows系统就会自动到“D:\develop\Java\jdk1.7.0_72\bin”路径下查找javac和java了。

l 配置步骤:

鼠标右键点击计算机  →  属性  →  高级系统设置  →  点击环境变量  →  找到系统变量中的PATH  →  点击编辑按钮。

将JDK安装目录\bin路径(我的电脑上的D:\develop\Java\jdk1.7.0_72\bin)配置到PATH变量中,用英文分号与其他变量隔开。

注意:配置PATH后文件的访问顺序:先访问当前路径,如果当前路径没有该文件,则再访问PATH配置的路径。

接下来我们测试一下:

l 把原有的HelloWorld.class删除;

l 进入HelloWorld.java所在目录:

n 切换盘符到E盘:C:/>D:;

n 进入java目录:D:/>cd java;

n 编译:D:/java/>javac HelloWorld.java;

n 运行:D:/java/>java HelloWorld;

第3章 注释、关键字与标识符

3.1 程序注释

通常我们需要在源代码中添加文字用来对进行代码解释说明,但这些文字并不是Java代码的语法,会导致编译出错。这时我们可以使用注释来完成这一事项!

在编译时,编译器会忽略注释的存在,就好像注释内容不存在一样。所以注释并不会导致编译出错,同时注释还方便编写者和其他人阅读源代码,加强对代码的理解。

Java中提供了三种注释方式,分别是:

l 单行注释    //注释内容

l 多行注释    /*注释内容*/

l 文档注释 /**注释内容*/

  其中文档注释与多行注释作用基本相同,唯一的区别是文档注释可以使用javadoc.exe命令生成API文档。在这里我们不对其进行讲解,等大家对API有一定了解后在学习文档注释生成API文档的相关知识!

HelloWorld.java

/*

* 实现步骤:

* 1.定义一个类 class

* 2.编写程序执行的入口方法,main主方法

* 3.通过输出语句System.out.println()将信息”HelloWorld!”打印在控制台上

*/

// 定义一个类 class

class HelloWorld {

// 编写程序执行的入口方法,main主方法

public static void main(String[] args) {

// 通过Java提供的输出语句, 将信息”HelloWorld!”打印在控制台上

System.out.println("HelloWorld!");

}

}

建议大家今后在编写代码时先写思路、分析、步骤,然后再写代码。其中思路、分析、步骤都使用注释放在源代码中。

3.2 关键字

关键字是被Java语言赋予特殊含义,具有专门用途的单词,比如之前接触的class,public,static,void均为Java已经预设好的。你可以先把Java关键字理解为“命令”!
  Java中关键字均为小写,下面是Java中所有关键字,你不需要去背,在今后的学习中重要的关键字会不断的出来。

你可以尝试看看HelloWorld案例中哪些是关键字,哪些不是!

3.3 标识符

学习完了关键字下面我们来学习一下什么是标识符。其实在Java程序中,除了关键字以外基本上都是标识符了。

其实标识符就是名称的意思,所有的名称都统称为标识符。Java中经常要定义类、方法、变量(后面会学习到),在定义他们时总要给它们起名字,这些名字就是标识符。

这里我们要学习的是如何起名字,你可能会说起名字还要学吗?答案是当然要学了!我们要学习的就是标识符的规范。

l 组成元素

l 英文字符: a-zA-Z

l 数字: 0-9

l 符号: _与$

l 标识符规则

l 数字不能开头

l 不可以使用关键字

l 严格区分大小写,不限制长度起名时,尽量达到见名知意

第4章 数据

4.1 程序概述

软件是什么?其实软件就是用来处理数据的程序。可以把软件分为两个部分,一个部分是“数据”;另一个部分是“数据处理的逻辑”。

程序 = 数据 + 逻辑

什么是数据?用电商来举例,用户就是数据,商品也是数据。那么什么是数据处理逻辑呢?购买商品的流程就是数据处理逻辑了。

程序开发离不开数据,其实说白了程序就是用来处理数据的。在Java中我们要学习数据的类型及数据量。

通常数据是会发生变化的,而数据的处理逻辑是不发生变化的。例如商品的数量种类是会变化的,用户的数量也是会变化的,但购买的流程通常不会变化。

4.2 数据类型

在生活中数据是有类型的,例如人的姓名是字符串类型,人的年龄是正整数类型。在Java中数据也是有类型的(任0何数据必然会有类型),下面是Java中数据的类型:

基本数据类型是Java语言中内置的类型,分别是整数类型、小数类型、字符类型、布尔类型。这四类基本类型是最简单、最基础的类型。

引用数据类型是强大的数据类型,它是基于基本数据类型创建的。JavaSE中提供了一个超级类库,类库中包含了近万种引用数据类型。不过现在我们先要学习的是基本类型!

4.3 常量

Java中的数据量分为常量和变量,我们先来学习常量!

常量就是不变的数据量,例如100就是常量,任何数据量都有其类型,那么100这个常量是什么类型呢?回忆一下基本类型中有四类,分别是整数、小数(浮点数)、字符、布尔。那么100是哪一类型呢?没错,就是整数常量!!!

l 整数类型

n 十进制表示方式:正常数字   如 13、25等

n 二进制表示方式:以0b(0B)开头    如0b1011 、0B1001

n 十六进制表示方式:以0x(0X)开头   数字以0-9及A-F组成  如0x23A2、0xa、0x10

n 八进制表示方式:以0开头   如01、07、0721

l 小数类型

l 如1.0、-3.15、3.168等

l 布尔类型

l true、false

l 字符类型

l 如'a','A', '0', '家'

l 字符必须使用’’ 包裹,并且其中只能且仅能包含一个字符。

l 字符串类型

l 字符串String类型是一种引用类型,我们先了解作为常量类型的使用方式

l 如“我爱Java”,“0123”,“”,“null”

l 字符串必须使用“”包裹,其中可以包含0~N个字符。

回顾HelloWorld案例,其中System.out.println(“Hello World!”)的圆括号中放的就是一个字符串。那么我们是否可以把圆括号中的字符串换成其他字符串呢?答案是可以的!不只是可以换成其他字符串,还可以把圆括号中的字符串换成其他类型的常量,例如:

我们通过编写代码来实际感受一下: Const.java

/*

* 常量的演示

*/

public class Const {

public static void main(String[] args) {

//整数类型

//10进制

System.out.println(100);

System.out.println(12345);

System.out.println( 10 );

//2进制

System.out.println( 0b1010 );

//8进制

System.out.println( 012 );

//16进制

System.out.println(0xA);

//小数类型

System.out.println(3.15);

//字符类型

System.out.println('a');

System.out.println('A');

System.out.println('0');

System.out.println('家');

//布尔类型

System.out.println(true);

System.out.println(false);

//字符串类型

System.out.println("我爱Java");

System.out.println("0123");

}

}

第5章 总结

5.1 Java开发环境搭建

l 下载和安装JDK

l 配置环境变量

n 计算机->属性->高级系统设置->高级->环境变量->系统变量path->jdk安装目录bin

5.2 注释

l Java的三种注释写法

l // 单行

l /**/ 多行

l /***/ 文档注释

5.3 关键字

l 定义

n 被Java定义好的,赋予特殊含义单词

n 全部采用小写字母

n class public static void true false

5.4 标识符

l 自定义的内容,类名,方法名,变量名

l 包含字母大小写,数字,下划线和美元符,不能数字开头

l 不允许是关键字

5.5 数据类型和常量

l 基本数据类型

n 整数  0 1 2

n 浮点  0.1 1.0 2.2

n 布尔  true false

n 字符  'a'

n 字符串常量 "" 任意长度

Java基础(Java概述、环境变量、注释、关键字、标识符、常量)的更多相关文章

  1. Java基础学习-Path环境变量的配置

    1.为什么要进行Path环境变量的配置       程序的编译和执行需要使用到javac和java命令,所以只能在bin目录下写程序,而实际开发中,我们不可能将程序全部写到bin目录下,所以我们不许让 ...

  2. <java基础学习>01环境变量配置

    安装完JDK开始配置系统环境变量,在path变量里面添加java的bin目录 方法二: 配置完成后 在命令下输入javac查看是否配置成功 第一个java程序 hello world! class H ...

  3. java基础(一):我对java的三个环境变量的简单理解和配置

    首先说说java的三个环境变量:java_home,classpath,path java_home:jdk的安装路径[你一层一层点开安装路径,直到当前目录有一个bin目录,然后在地址栏里面右键单击复 ...

  4. Java基础-配置开发环境-安装JDK

    Java基础-配置开发环境-安装JDK 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.计算机基础知识 1>.计算机的组成 计算机有硬件与软件组成. 2>.硬件: 硬 ...

  5. Java基础1-Java概述;jdk安装配置

    计算机基本概念 windows : desktop系统. linux : 稳定性 + 安全性. centos . ubuntu.redhat.suse mac : 路径: 精准定位 目录: 所在的文件 ...

  6. Windows下Java JDK安装和环境变量配置

    [Java攻城狮学习路线](http://www.cnblogs.com/apollospotatolikett/p/8665123.html 1.JDK下载 下载地址:http://www.orac ...

  7. 关于java中jdk的环境变量配置

    关于java中jdk的环境变量配置 烦死人,在网上找了很长时间.最终找到了一个方法!现在将其总结帮助后来人. 方法/步骤   1 下载好jdk,并按照提示一步步安装,最后记下jdk所在的安装位置,这里 ...

  8. Java基础-Java中23种设计模式之常用的设计模式

    Java基础-Java中23种设计模式之常用的设计模式 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任.   一.设计模式分类 设计模式是针对特定场景给出的专家级的解决方案.总的来说设 ...

  9. Java基础-Java中的并法库之重入读写锁(ReentrantReadWriteLock)

    Java基础-Java中的并法库之重入读写锁(ReentrantReadWriteLock) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 在学习Java的之前,你可能已经听说过读 ...

  10. Java基础-JAVA中常见的数据结构介绍

    Java基础-JAVA中常见的数据结构介绍 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.什么是数据结构 答:数据结构是指数据存储的组织方式.大致上分为线性表.栈(Stack) ...

随机推荐

  1. configured to save RDB snapshots, but is currently not able to persist o...

    Redis问题 MISCONF Redis is configured to save RDB snapshots, but is currently not able to persist on d ...

  2. [转]JavaScript的实例化与继承:请停止使用new关键字

    JavaScript中的new关键字可以实现实例化和继承的工作,但个人认为使用new关键字并非是最佳的实践,还可以有更友好一些的实现.本文将介绍使用new关键字有什么问题,然后介绍如何对与new相关联 ...

  3. float浮动改变display类型

    position:absolute和float都会隐式的改变display类型. 也就是说,不论之前是什么类型的元素(display:none除外),只要设置了position:absolute或fl ...

  4. 重学JAVA基础(五):面向对象

    1.封装 import java.util.Date; public class Human { protected String name; protected BirthDay birthDay; ...

  5. Poj_1011_Sticks(剪枝)

    一.Description 乔治拿来一组等长的木棒,将它们随机地砍断,使得每一节木棍的长度都不超过50个长度单位.然后他又想把这些木棍恢复到为裁截前的状态,但忘记了初始时有多少木棒以及木棒的初始长度. ...

  6. 在Android工程中导入外部动态连接库(so文件)

    假设要导入的so文件命为libtest.so,导入的方法如下: 给工程加入Native Support,将libtest.so复制到在jni文件夹下,在Android.mk文件中,加入以下代码: in ...

  7. Golang : pflag 包简介

    笔者在前文中介绍了 Golang 标准库中 flag 包的用法,事实上有一个第三方的命令行参数解析包 pflag 比 flag 包使用的更为广泛.pflag 包的设计目的就是替代标准库中的 flag ...

  8. 杭电1002_A + B Problem II

    这是该题的链接http://acm.hdu.edu.cn/showproblem.php?pid=1002 具体的题的内容就不过多描述了,想必你已经知道了,当我看完这道题后就知道咋写了,可是这道题从开 ...

  9. poj2449(k短路&A_star模板)

    题目链接:http://poj.org/problem?id=2449 题意:给出一个有向图,求s到t的第k短路: 思路:k短路模板题,可以用A_star模板过: 单源点最短路径+高级搜索A*;A*算 ...

  10. 洛谷P1722 矩阵 II(Catalan数)

    P1722 矩阵 II 题目背景 usqwedf 改编系列题. 题目描述 如果你在百忙之中抽空看题,请自动跳到第六行. 众所周知,在中国古代算筹中,红为正,黑为负…… 给定一个1*(2n)的矩阵(us ...