1 Java概述

1.1 Java语言概述

1.1.1 Java语言发展史(了解)

  • day01-课堂笔记-Java概述 - 图1詹姆斯·高斯林(James Gosling)
  • SUN (Stanford University Network斯坦福大学网络公司)
  • 1995年5月23日 Java语言诞生
  • 1996年1月 JDK1.0
  • 1997年2月 JDK1.1
  • 1998年12月 JDK1.2(将Java分成了J2SE,J2EE,J2ME)
  • 2000年5月 J2SE1.3
  • 2002年2月 J2SE1.4(1.4.2版本很多公司在使用)
  • 2004年10月 JDK1.5(改名JavaSE5.0,JavaEE5.0,JavaME5.0)
  • 2006年12月 JavaSE6.0
  • 2009年4月20日 甲骨文(Oracle)74亿美元收购Sun。
  • 2011年7月 JavaSE7.0(市场主流版本)
  • 2014年3月 JavaSE8.0

    1.1.2 Java语言平台概述

  • JavaSE / J2SE(Java 2 Platform Standard Edition)标准版

是为开发普通桌面和商务应用程序提供的解决方案,该技术体系是其他两者的基础,可以完成一些桌面应用程序的开发。
day01-课堂笔记-Java概述 - 图2

  • JavaME / J2ME(Java 2 Platform Micro Edition)小型版

是为开发电子消费产品和嵌入式设备提供的解决方案。
day01-课堂笔记-Java概述 - 图3

  • JavaEE / J2EE(Java 2 Platform Enterprise Edition)企业版

是为开发企业环境下的应用程序提供的一套解决方案,该技术体系中包含的技术如 Servlet、JSP等,主要针对于Web应用程序开发。
day01-课堂笔记-Java概述 - 图4day01-课堂笔记-Java概述 - 图5

1.1.3 JRE和JDK

day01-课堂笔记-Java概述 - 图6
JDK : JRE+开发工具
JRE: JVM+核心类库
JVM:保证语言的跨平台
三者的关系:
day01-课堂笔记-Java概述 - 图7

1.1.4 Java语言跨平台原理

  • 平台:指的是操作系统(Windows,Linux,macOS)
  • 跨平台:Java程序可以在任意操作系统上运行,“一次编写,到处运行”。

即Java的.class程序可以在不同操作系统上均可以运行。(Java的.class文件相当于Windows中的.exe文件,是可执行的程序。)

  • 原理:实现跨平台需要依赖Java的虚拟机 JVM (Java Virtual Machine)

day01-课堂笔记-Java概述 - 图8

  • Java语言是跨平台的,Java虚拟机不是跨平台的。

    1.2 JDK的下载与安装

    下载(略);
    安装:
    day01-课堂笔记-Java概述 - 图9
    这个界面是询问我们,是否需要额外的再装一个jre环境,由于jdk中已经包含了jre环境,因此建议大家,取消即可;
    测试:
    1:进入到jdk的安装目录;
    2:在安装目录位置打开cmd命令行;(在目录位置输入cmd.exe回车)
    3:输入java 回车
    4:输入javac 回车

    1.3 CMD常用dos命令

    注意:所有cmd命令行的代码不区分大小写;
    : 切换盘符;例如: D: E: F:
    cd 目录名称
    cls 清屏
    cir 查看当前文件夹下的所有内容
    cd.. 向上退回一级目录

    1.4 Java快速入门程序

    名称解释:
    1:类:
    编写程序时的最小单元;
    2:main方法:
    程序执行时的功能入口;
    3:程序:
    由很多的类组合在一起的整体,就是一个程序;(数据加逻辑)
    HelloWorld案例编写:
    类的格式:
    public class 自定义类名{
    public static void main(String[] args){
    System.out.println(“为所欲为….”);
    }
    }

注意事项:
1:注意单词的大小写;(严格区分)
2:main方法中的代码, 每一行的结尾都必须添加一个分号;
3:所有的符号, 必须是英文的!

1.5 程序的编译与运行

Java程序的后缀名必须是.java;
.java程序是不能直接运行的, 这是java源代码, 源代码要想运行, 必须先编译, 编译后得出的文件称为.class文件 (字节码文件); 字节码文件是给计算机识别运行用的, 源代码是给程序员编写用的;
day01-课堂笔记-Java概述 - 图10

编译的步骤:
1:使用CMD命令行进入到.java文件所在的文件夹中;
2:使用命令编译:
命令格式:
Jdk安装路径/bin/javac HelloWorld.java
运行的步骤:
1: 使用CMD命令行进入到.class文件所在的文件夹中;
2:使用命令运行:
命令格式:
Jdk安装路径/bin/java HelloWorld
注意事项:
编译命令带.Java
运行命令不带.Class;

1.6 配置java_home环境变量

配置javaHome环境变量,可以简化我们编译和运行代码的命令;
名称:
JAVA_HOME
值:
jdk的安装路径(不带bin)
编辑path:
%JAVA_HOME%\bin;

1.7 Notepad++软件

Notepad++就是一个超级记事本,能够帮我们显示代码行号,还带颜色(java中的关键字会变为紫色);

安装步骤与路径无任何要求;
配置:
day01-课堂笔记-Java概述 - 图11
day01-课堂笔记-Java概述 - 图12

1.8 Java语言中程序中的注释

注释是给程序员看的东西,对代码的执行没有任何影响;
仅仅是给其他程序员读程序的时候,进行的解释说明性的文字;
Java中有3种注释方式:
1:单行注释;仅仅写一行解释说明性的文字;
格式:
// 这里可以为所欲为
2:多行注释;可以写一片文字;
格式:
/
这里可以为所欲为
/
3:文档注释;
格式:
/*
这里的文字可以使用java中特殊的命令;(javadoc)可以将注释单独生成一份对应的API文档;
/

1.9 Java中的关键字

所谓的关键字就是java中提供的固定的单词,具有特殊的含义,可以简单理解为“java的基本命令”;例如:
public class static void 等。。。
day01-课堂笔记-Java概述 - 图13
day01-课堂笔记-Java概述 - 图14

2 Java中的常量

2.1 常量概述

所谓的常量就是固定不变的数据值
例如:1 2 “a” ‘a’ 3.5 6.8…..

2.2 Java中的数据类型

大体上分为两类:
1:基本数据类型
进一步细分为:4类8种:
整数:
byte
short
int (整数默认是int类型)
long (long类型的数据值,后面需要添加L或l)

小数
float (float类型的数据,需要在后面添加F或f)
double(小数默认是double类型)
字符
char (需要使用单引号包裹起来,且只能写一个符号)
布尔
boolean 只有两个数据值,true和false

四类 八种 字节数 数据表示范围
整型
(精确)
byte 1 -128~127
short 2 -32768~32767
int(默认) 4 -2147483648~2147483647
long 8 -263~263-1
浮点型
(不精确)
float 4 -3.403E38~3.403E38
double(默认) 8 -1.798E308~1.798E308
字符型 char 2 表示一个字符,如(‘a’,’A’,’0’,’家’)
布尔型 boolean 1 只有两个值true与false

2:引用数据类型
(1):类
(2):数组
(3):接口

2.3 Java中数据存储的形式

  • 变量是内存中的小容器,用来存储数据。那么计算机内存是怎么存储数据的呢?无论是内存还是硬盘,计算机存储设备的最小信息单元叫“位(bit)”,我们又称之为“比特位”,通常用小写的字母b表示。而计算机最小的存储单元叫“字节(byte)”,通常用大写字母B表示,字节是由连续的8个位组成。
  • 除了字节外还有一些常用的存储单位,大家可能比较熟悉,我们一起来看看:

1byte(B)(字节) = 8bit(比特位) (比特位就是计算机能识别的一个0或1)
1KB = 1024B
1MB = 1024KB
1GB = 1024MB
1TB = 1024GB
1PB = 1024TB

3 变量

3.1 变量概述

变量就是一个内存中的小盒子;这个小盒子可以保存一个常量值,也可以获取出来这个常量值,也可以修改小盒子的内容;变量在定义的时候,需要明确数据类型,将来保存的数据值必须与声明的数据类型保持一致;
定义变量的代码格式:
数据类型 变量名 = 数据值;

数据类型 :从4类8种之中任选其一;(后面学习时,引用数据类型也能选)
变量名:只要符合标识符规范即可;
= : 固定符号,代表赋值的含义;
数据值:只要是一个常量值都行,(需要与声明的数据类型保持一致);

获取变量值的代码格式:
直接写变量名就是获取变量值;
修改变量值的代码格式:
变量名=数据值;

3.2 变量定义的注意事项

  • 变量未赋值,不能直接使用

    引出变量的第二种使用格式

  • 变量只在它所属的范围内有效。(作用域)

    变量在哪对大括号内,变量就属于哪对大括号

  • 一行上可以定义多个变量,但是不建议

3.3 标识符

  • 作用

给包,类,方法,变量等起名字

  • 组成规则(硬性规定

由字符,下划线,美元符$组成
这里的字符采用的是Unicode字符集,所以包括英文大小写字母,中文字符,数字字符等,但符号只能有两个:下划线
和美元符$。

  • 注意事项(硬性规定

不能以数字开头
不能是Java中的关键字

  • 命名规则(软性建议)(此处按公司命名规则要求来, 如果没有要求建议按照阿里巴巴java开发手册的命名规则来)
    • 基本要求

见名知意

  1. - 常见命名的规则
  2. - (其实就是文件夹,用于对类进行管理)

全部小写,多级包用点隔开。公司域名的反写。
cn.itcast (相当于两级文件夹:cn\itcast)
com.itheima (相当于两级文件夹:com\itheima)

     - 类

一个单词首字母大写 Student Car
多个单词,每个单词首字母大写 HelloWorld

     - 变量或者方法

一个单词首字母小写。 age show()
多个单词,从第二个单词开始每个单词首字母大写 maxAge getAge()