Java SE 基础 Java语言概述
Posted 逆轮回
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java SE 基础 Java语言概述相关的知识,希望对你有一定的参考价值。
概述
Sun Microsystems于1995年推出的面向对象的程序设计语言,共同创始人的詹姆斯·高斯林 (James Gosling)被誉为“Java之父”。
是一种面向Internet的编程语言。Java一开始富有吸引力是因为Java程序可以在Web浏览器中运行。这些Java程序被称为Java小程序
(applet)。applet使用现代的图形用户界面与Web用户进行交互。 applet内嵌在html代码中。随着Java技术在web方面的不断成熟,已经
成为Web应用程序的首选开发语言。
Java的历史
1996年发布JDK 1.0
1998年发布JDK 1.2
平台名称:J2SE(Stadard Edition)、J2EE(Enterprise Edition)、J2ME(Micro Edition)
2004年发布JDK 1.5 版本更名:Java 5.0
平台名称:Java SE、Java EE、Java ME
2006年发布Java 6.0
2009年被Oracle收购
2011年由Oracle发布Java 7.0
2014年由Oracle发布Java 8.0
2017年由Oracle发布Java 9.0
2019年由Oracle发布Java 14.0
JDK各个版本发布时间和版本名称表
版本 | 名称 | 发行日期 |
---|---|---|
JDK 1.0 | Oak(橡树) | 1996-01-23 |
JDK 1.1 | none(无) | 1997-02-19 |
JDK 1.1.4 | Sparkler(宝石) | 1997-09-12 |
JDK 1.1.5 | Pumpkin(南瓜) | 1997-12-13 |
JDK 1.1.6 | Abigail(阿比盖尔–女子名) | 1998-04-24 |
JDK 1.1.7 | Brutus(布鲁图–古罗马政治家和将军) | 1998-09-28 |
JDK 1.1.8 | Chelsea(切尔西–城市名) | 1999-04-08 |
J2SE 1.2 | Playground(运动场) | 1998-12-04 |
J2SE 1.2.1 | none(无) | 1999-03-30 |
J2SE 1.2.2 | Cricket(蟋蟀) | 1999-07-08 |
J2SE 1.3 | Kestrel(美洲红隼) | 2000-05-08 |
J2SE 1.3.1 | Ladybird(瓢虫) | 2001-05-17 |
J2SE 1.4.0 | Merlin(灰背隼) | 2002-02-13 |
J2SE 1.4.1 | grasshopper(蚱蜢) | 2002-09-16 |
J2SE 1.4.2 | Mantis(螳螂) | 2003-06-26 |
Java SE 5.0 (1.5.0) | Tiger(老虎) | 2004-09-30 |
Java SE 6.0 (1.6.0) | Mustang(野马) | 2006-04 |
Java SE 7.0 (1.7.0) | Dolphin(海豚) | 2011-07-28 |
Java SE 8.0 (1.8.0) | Spider(蜘蛛) | 2014-03-18 |
Java SE 9.0 | none(无) | 2017-09-21 |
Java SE 10.0 | none(无) | 2018-03-21 |
Java SE 11.0 | none(无) | 2018-09-25 |
Java技术体系平台
Java SE(Java Standard Edition)标准版
支持面向桌面级应用(如Windows下的应用程序)的Java平台,提供了完整的Java核心API,此版本以前称为J2SE。
Java EE(Java Enterprise Edition)企业版
是为开发企业环境下的应用程序提供的一套解决方案。该技术体系中包含的技术如:Servlet 、Jsp等,主要针对于Web应用程序开发。版本以前称为J2EE。
Java ME(Java Micro Edition)小型版
支持Java程序运行在移动终端(手机、PDA)上的平台,对Java API有所精简,并加入了针对移动终端的支持,此版本以前称为J2ME。
java SE 基础概念梳理
(一)First
摘要:Java概述、Java开发环境搭建、程序开发流程
Java概述
- Java的应用
开发QQ、迅雷程序(桌面应用软件)
开发淘宝、京东(互联网应用软件)
- Java的擅长
互联网:电商、P2P等等
企业级应用:ERP、CRM、BOS、OA等等
- Java语言平台
JavaSE(标准版)
JavaEE(企业版)
Java开发环境搭建
- 常用的DOS命令
win+r--cmd--回车: 打开Dos控制台
cd.. : 退回到上一级目录
cd\ : 退回到根目录
d: : 回车 盘符切换
dir : 列出当前目录下的文件以及文件夹
cls : 清除屏幕
ipconfig: 查看本机的相关网络配置
- JDK的下载和安装
- 从官网上下载并安装JDK。(注意设置环境变量)
- 验证安装是否成功:打开Dos控制台输入javac,如果正常显示一些内容,说明安装成功。
- JDK和JRE和跨平台
JDK与JRE的关系
JDK:它是Java开发运行环境;
JRE:它是Java运行环境(Java Runtime Environment);( JDK包含了JRE)
跨平台特性
平台指的是操作系统 (如:Windows,Linux,Mac)。
Java程序可以在任意操作系统上运行,一次编写到处运行。实现跨平台需要依赖Java的虚拟机 JVM 。
程序开发流程
- Java代码的编写执行过程
源文件:编写Java源文件(我们也称之为源代码文件),它的扩展名为.java;
编译:然后通过编译器把源文件编译成字节码文件,字节码文件扩展名为.class;
运行:最后使用解释器来运行字节码文件。
- Java注释注意点
1:对于单行和多行注释,被注释的文字,不会被JVM解释执行
2:对于文档注释,可以被JDK提供的工具 javadoc 所解析,生成一套以网页文件形式体现的该程序的说明文档
3:单行注释可以嵌套使用,多行注释不能嵌套使用
- 一般命名习惯:
类名&接口名:大驼峰式 HelloWorld
变量名&方法名:小驼峰式 helloWorld
常量名:使用_连接HELLO_WORLD
- Java数据类型
基本数据类型:整数(byte、short、int、long)、小数(float、double)、字符类型(char)、布尔类型(boolean)
引用数据类型:数组、类、接口
(二)Second
摘要:变量、运算符、引用类型、流程控制语句
变量
- 数据类型四类八种
整型 byte -128~127
short
int
long
浮点型 float
double
字符型 char 表示一个字符
布尔型 boolean只有两个值true与false
整形常量默认是int类型
小数常量默认是double类型
定义长整形数据如果值超过int取值范围后面要加"L"
定义float类型的数据后面一定要加"f"
String 是引用数据类型
- 自动转换
范围大的数据类型 变量 = 范围小的数据类型值; 如:int i = 1;double j = i;
- 强制转换
范围小的数据类型 变量 = (范围小的数据类型) 范围大的数据类型值; 如:int i = (int)6.718; //i的值为6
运算符
- 算数运算符
- 逻辑运算符
& 与 false&true False
| 或 false|true True
^ 异或 true^flase True
! 非 !true Flase
&& 短路与 false&&true False
|| 短路或 false||true True
短路与&&: 参与运算的两边数据,有false,则运算结果为false;
短路或||: 参与运算的两边数据,有true,则运算结果为true;
- 三元运算符
(条件表达式)?表达式1:表达式2;==>不能嵌套使用
- 运算符优先级
优先级 描述 运算符
1 括号 ()、[]
2 正负号 +、-
3 自增自减,非 ++、--、!
4 乘除,取余 *、/、%
5 加减 +、-
6 移位运算 <<、>>、>>>
7 大小关系 >、>=、<、<=
8 相等关系 ==、!=
9 按位与 &
10 按位异或 ^
11 按位或 |
12 逻辑与 &&
13 逻辑或 ||
14 条件运算 ?:
15 赋值运算 =、+=、-=、*=、/=、%=
16 位赋值运算 &=、|=、<<=、>>=、>>>=
引用类型
- 引用数据类型的定义格式
数据类型 变量名 = new 数据类型();
例如:
Scanner类的使用
- import导包:import java.util.Scanner;
- 创建对象 Scanner sc = new Scanner(System.in);
- 读取键盘录入的一个整数:int enterNumber = sc.nextInt();
- 读取键盘录入的字符串 : String enterString = sc.next();
Random随机数类的使用
- import导包:import java.util. Random;
- 创建实例:Random rd = new Random ();
- nextInt(int maxValue) 产生[0,maxValue)范围的随机数,包含0不包含maxValue
- nextDouble() 产生[0,1)范围的随机数
流程控制语句(if语句、while语句、do-while语句、for语句、switch语句)
- if语句对比三元运算符
- 判断条件多,使用if; 2.三元运算符必须有结果的, if 可以没有结果的;
- switch语句
关键字: switch case default break
case穿透问题
switch语句中的表达式的数据类型
JDK1.0 - 1.4 数据类型接受 byte short int char
JDK1.5 数据类型接受 byte short int char enum(枚举)
JDK1.7 数据类型接受 byte short int char enum(枚举), String
(三)Third
摘要:数组
数组
- JVM内存划分(划分为5个区域)
寄存器: 内存和CUP之间
本地方法栈: JVM调用了系统中的功能
方法和数据共享: 运行时期class文件进入的地方
方法栈: 所有的方法运行的时候进入内存
堆: 存储的是容器和对象
- 一维数组的定义
数据类型[] 数组名 = new 数据类型[元素个数或数组长度]; 如:int[] x = new int[10];
- 一维数组初始化
动态初始化 : 在定义数组时只指定数组的长度,由系统自动为元素赋初值的方式称作动态初始化。
1、类型[] 数组名 = new 类型[长度];
int[] arr = new int[4];
静态初始化: 在初始化数组时还有一种方式叫做静态初始化,就是在定义数组的同时就为数组的每个元素赋值。
2、类型[] 数组名 = new 类型[]{元素,元素,……};
int[] arr = new int[]{1,2,3,4};
3、类型[] 数组名 = {元素,元素,元素,……};
int[] arr = { 1, 2, 3, 4 };
- 二维数组的定义
第一种定义格式:
int[][] arr = new int[3][4];
第二种定义格式
int[][] arr = {{1,2},{3,4,5,6},{7,8,9}};
第三种定义格式(不常用)
int[][] arr = new int[3][];
第三种方式和第一种类似,只是数组中每个元素的长度不确
- 二维数组的例子
class ArrayDemo {
public static void main(String[] args){
//定义二维数组的方式
int[][] arr = new int[3][4];
System.out.println( arr );
System.out.println("二维数组的长度: " + arr.length);
//获取二维数组的3个元素
System.out.println( arr[0] );
System.out.println( arr[1] );
System.out.println( arr[2] );
System.out.println("打印第一个一维数组的元素值");
System.out.println( arr[0][0] );
System.out.println( arr[0][1] );
System.out.println( arr[0][2] );
System.out.println( arr[0][3] );
System.out.println("打印第二个一维数组的元素值");
System.out.println( arr[1][0] );
System.out.println( arr[1][1] );
System.out.println( arr[1][2] );
System.out.println( arr[1][3] );
System.out.println("打印第三个一维数组的元素值");
System.out.println( arr[2][0] );
System.out.println( arr[2][1] );
System.out.println( arr[2][2] );
System.out.println( arr[2][3] );
}
}
以上是关于Java SE 基础 Java语言概述的主要内容,如果未能解决你的问题,请参考以下文章