Java教程

JavaSE系列教程(一)

本文主要是介绍JavaSE系列教程(一),对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

文章目录

  • 一、前言
  • (1)、计算机基础概述
  • (2)、编程语言概述
  • 二、Java语言概述
  • 三、Path环境变量配置
  • 四、HelloWorld案例
  • 五、基本概念
  • (一)注释
  • (二)关键字
  • (四)Java的命名规则
  • 六、常量
  • 七、变量
  • (一)变量的定义和访问
  • (二)数据类型
  • (三)常量的默认类型
  • (四)变量的作用域
  • (五)变量定义和使用时注意事项
  • (六)数据类型转换之隐式转换
  • (七)数据类型转换之强制转换
  • (八)常量优化机制

一、前言

(1)、计算机基础概述

1、计算机:可以计算的机器,俗称“电脑”
2、起源:1946年,美国宾夕法尼亚大学发明世界上第一台计算机“ENAIC”(埃尼阿克)用
于军事
3、组成:运算器,控制器,存储设备,输入设备,输出设备
CPU:运算器+控制器:中央处理单元
硬件+软件

(2)、编程语言概述

1、概念:就是使用特定的格式,特定的符号,完成软件的逻辑设计
2、分类:
机器语言:全都是用0和1组成的语言,计算机可以直接识别的唯一语言。
汇编语言:将各种数据、指令、内存地址,写成简单的英文单词。
高级语言:将各种操作进行封装,使用特定的格式完成特定的功能。就像说英语一样
在进行逻辑的处理。但是计算机无法直接看懂。

二、Java语言概述

1、起源:
1995年左右,由詹姆斯.高斯林和他的团队发布第一个Java测试版。期初Java属于Sun公
司。
2009年Oracle公司,收购了sun公司,java属于了Oracle公司。
2、java的版本:java本身是一门语言,要识别这个语言就需要专门的软件。是软件就会有
更新换代,所以就有了各种升级的版本。目前最主流的版本是JDK8其次是JDK7
3、java的平台版本:做不同的事情时候,使用不同的工具包
JavaMe:Java Micro edition,最小版本,在移动端开发使用
JavaSe:Java Standard Edition,标准版本,具备了基本的库,用于在pc端进行开发
JavaEE:Java Enterprise Editon,企业版本,具备了开发网站的功能,用于开发网站
4、java语言的特点:
开源:开放源代码
面向对象
跨平台
编译性:写好代码之后,需要先编译,成为字节码文件(.class)。高效、安全
动态性:在程序运行过程中,可以决定运行的内容,修改运行内容

三、Path环境变量配置

配置目的:让bin目录下java开发相关的.exe可执行程序,
在计算机的任何一个位置都能被打开
1、在系统变量中,添加一个环境变量
变量名:JAVA_HOME
变量值:jdk安装路径,不带bin目录
2、在path环境变量中,使用%JAVA_HOME%动态的取出JAVA_HOME的变量值
拼接bin目录,形成java、javac所在的路径

四、HelloWorld案例

(一)HelloWorld案例书写
1、开发流程:
(1)【编辑】使用记事本打开文本文档,编辑源代码,形成一个源文件(.java)
(2)【编译】使用jdk中提供的开发工具,对源代码编译,形成一个字节码文件
(.class)
(3)【运行】使用jdk中提供的开发工具,对字节码文件进行运行
(4)【调试】发现问题,找到问题
2、HelloWorld案例编辑:
(1)在jdk的bin目录下,创建新的文件,以HelloWorld.java命名
(2)在文件中定义一个类,类名与文件名一致
1 class HelloWorld {
2
3 }
(3)在类中定义主方法:
1 public static void main(String[] args) {
2
3 }
(4)在主方法中,书写输出语句
1 System.out.println(“HelloWorld!”);
3、HelloWorld案例编译:
使用javac.exe编译HelloWorld.java,命令为:javac HelloWorld.java
生成一个HelloWorld.class的字节码文件
4、HelloWorld案例运行:
使用java.exe运行HelloWorld这个类,命令为:java HelloWorld
运行结果为打印HelloWorld
代码示例
class HelloWorld {
public static void main(String[] args) {
System.out.println(“邹忌:吾与徐公shu美?客曰:忌你太美!”);
4 }
}
** java语言的编写规范**
1、在编辑java代码的时候,需要遵守的一些,约定俗成的规则。
2、在左大括号前面,要加一个空格
3、在左大括号后面,要换行、缩进
4、右大括号要和本层次的代码对齐
5、运算符两侧,要加上空格
6、在不同的代码段之间,要加上空行

五、基本概念

(一)注释

1、在代码中,用于解释说明程序的部分。
2、注释特点:
(1)编译器不会检查这部分内容的语法格式
(2)运行的时候会忽略掉这部分内容
3、分类:
单行注释:使用符号【//】,可以注释本行的内容,是//后面的内容
特点:可以嵌套使用
多行注释:使用符号【/* /】,可以注释多行的内容,两个星号中间的内容
特点:可以换行注释、不能嵌套
文档注释:【/
* */】在面向对象阶段学习
注意:光标在类中方法之外的位置,是给类添加文档注释的
3、注释的作用:
(1)对程序进行解释说明:要求代码中,有30%行数都是用来写注释的
(2)对程序的思路进行描述
(3)对程序进行调试:通过注释的方式,快速定位出现错误的代码位置
代码示例

1 class Demo01_Comment {
2 public static void main(String[] args) {
3
4 //单行注释:【//被注释的部分】;作用范围:一行(//符号之后)
5 //多行注释:【/* 被注释的部分 */】;作用范围:1行或者多行;注意事项:不能嵌套使
用
6 //文档注释:【/** 被注释的内容 */】;现在不学,在面向对象期间,配合注解生成帮助
手册
7
8 /*
9 注释的特点:
10 1、编译不会检测语法
11 2、运行不会被运行
12 */
13 /*
14 注释:对代码进行解释说明的部分
15
16 注释:在实际开发中,至少占到代码的30%,写代码一定要加上足够的注释
17 */
18 //system.out.println("123");
19 //System.out.println("123");//这是打印123的输出语句
20
21 /*
22 System.out.println("123");
23 System.out.println("123");
24 System.out.println("123");
25
26 System.out.println("123");
27 System.out.println("123");
28 System.out.println("123");
29 */
30 }
31 }
32

(二)关键字

1、概述:Java中提前定义好的并且赋予了特殊的含义和功能的英文单词。这样的单词在
java中总计有50个,但是在用的只有48个。有***goto和const两个单词没有使用*** ,所以被称之
为预留关键字【保留字】
2、图示斜体样式
在这里插入图片描述
3、特点:
(1)全部小写(只要遇到一个单词中出现了大写,首先判定不是关键字)
(2)自己起名字的时候,不要和关键字重名
(3)有两个保留字:goto、const,在当前版本不使用,但是以后是否使用未知。
(三)标识符
1、标识符:用于给类、接口、方法、变量、常量、枚举起名字的字符序列
2、组成:
(1)英文大小写a-zA-Z
(2)数字0-9
(3)特殊符号$ _
(4)不能用但是语法允许的符号:除了英文以外的其他语言的字符
3、标识符的注意事项:
(1)不要和关键字重名,mychar合法、char非法
(2)数字不要开头,abc123合法、123abc非法、123非法

(四)Java的命名规则

1、约定俗成的规则,编译器不会检查,但是在开发中必须要遵守的规则。
2、规则:见名知意
包:全部小写,域名倒着写
例如:com.ujiuye.demos
类和接口:大驼峰原则。每个单词的首字母大写,其余字母都小写,一般是一个名词
例如:HelloWorld
方法:小驼峰原则。第一个单词的首字母小写,从第二个单词开始,首字母大写,其余字母全小写
一般是一个动词或者动宾结构
例如:eat、getMax、getName、getSum
变量:小驼峰原则。第一个单词的首字母小写,从第二个单词开始,首字母大写,其余字母全小写
一般是一个名词或者形容词
例如:name、myAge
常量:所有字母都大写,单词和单词之间,使用_分隔,一般是一个名词
例如:PI、E、MAX_VALUE、SECONDS_PER_MINITE

六、常量

#1、常量:在程序运行过程中,其值不会发生改变的量,就是常量
2、常量按照表示形式的分类:
字面值常量:写出常量就可以知道常量的值,12, 12.34
符号常量:给常量起了一个名字,看到名字就知道常量的意义,不知道常量的值
3、常量按照数据类型分类:
基本数据类型:简单的数据
整数常量:所有整数,例如-12、15
小数常量:所有的小数,例如-12.34,100.0
字符常量:使用单引号引起来的符号,例如’a’、’1’
布尔常量:用于表示是是非非的内容,true、false
引用数据类型:基本类型组装而成的一些数据类型
字符串常量:使用双引号引起来的字符序列,例如”HelloWorld”
空常量:表示空,不指向任何数据,null

 class Demo03_Variable {
2 public static void main(String[] args) {
3 System.out.println(3);
4
5 System.out.println(3.5);
6
7 System.out.println('a');
8 System.out.println(' ');
9 System.out.println(' ');
10 System.out.println('中');
11 //System.out.println('');//单引号中,必须得有内容,有且仅有一个内容才对
12 //System.out.println(' ');
13
14 System.out.println(true);
15 System.out.println(false);
16
17 //‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐
18
19 System.out.println("");//空串
20 System.out.println("abc$%^&*中文123123");//字符序列
21
22 //System.out.println(null);
23 }
24 }

七、变量

(一)变量的定义和访问

1、变量:在程序运行过程中,其值会发生改变的量。
2、变量的定义分为两步:
(1)变量的声明:确定了变量名 和 变量的数据类型
(2)变量的赋值: 为变量进行初始化赋值
3、定义格式:
(1)格式一:数据类型 变量名 = 变量值;
(2)格式二:
数据类型 变量名;
变量名 = 变量值;
4、变量的使用:
(1)直接通过变量名访问变量值
(2)改变变量的值
5、变量的本质:在内存中,变量其实就是一段内存空间,空间中的数据可以不断的变化

(二)数据类型

1、java是一个强类型语言:需要显式的说明内存空间的大小,声明变量的时候,就需要说明变量的数据类型,以此来表示内存的大小。
2、数据类型的分类:
基本数据类型:在jdk中已经定义好的一些类型,这些类型无法增加,描述的都是一些简单的数据。这些数据描述的是数值【本身】。
引用数据类型:数据描述的不是数据本身,而是在描述真正数据的【地址】。一般都是使用一些自定义的类去描述,相当于各种基本类型的组合,形成一个复杂的类型。
3、基本数据类型:四类八种
整数类型
byte 1个字节(8条电路,8个位,8bit) -128~127
short 2个字节 -215~215-1
int 4个字节 -231~231-1
long 8个字节 -263~263-1
小数类型:IEEE754标准
float 4个字节 >8个字节long类型
double 8个字节 >4个字节的float类型
字符类型:
char 2个字节 0-65535
布尔类型:
boolean 未知 true\false

(三)常量的默认类型

1、整数常量的默认类型,是int,随意写出的整数常量就必须在int类型的表示范围之内-2147483648 ~ 2147483647
说明:如果想表示超过int类型范围的数字,就需要使用long类型的常量,在数字后面加一个字母L
2、小数常量的默认类型,是double
说明:如果想表示4字节的小数,就需要使用float类型的常量,在小数后面加上一个字母F

(四)变量的作用域

1、作用域:变量的作用域是指可以访问到变量的范围区域
2、重要概念:
(1)变量的声明、定义:带有数据类型的写法就是变量的定义
(2)变量的访问、使用:只有变量名称,没有变量的数据类型
2、局部变量作用域:
(1)局部变量:定义在方法中的变量
(2)局部变量作用域:变量定义在那一对大括号中,就从定义的位置开始,仅仅在这对大括号内起效

(五)变量定义和使用时注意事项

1、在方法中可以定义两个同名的局部变量,但是要求两个同名的局部变量不能有重合的作用域
2、变量在方法中必须先赋值后使用
3、只能在变量的作用域范围内访问该变量

(六)数据类型转换之隐式转换

1、当小的范围的数据类型和大的范围的数据类型在运算是,会先将小的范围的数据类型的数据,提升为大的范围的数据类型,再进行运算。运算的结果还是大的范围的数据类型。
2、数据类型表示范围的比较:
byte < short = char < int < long < float < double
3、注意事项:
byte、short、 char、int在相互运算时,会直接统统提升为int类型,而非较大类型int以及int以上的类型,在相互运算时,会提升为较大类型

(七)数据类型转换之强制转换

1、大的范围的数据类型的数据,要转成小范围的数据类型,就需要使用强制转换。
2、转换格式:
(要转成的数据类型)需要转换的数据
3、注意事项:
运算的结果,未必和生活中的结果相同

(八)常量优化机制

1、定义:给一个变量赋值,如果等号的右边是常量的表达式并且没有一个变量,那么就会
在编译阶段计算该表达式的结果,然后判断该表达式的结果是否在左边类型所表示范围内,
如果在,那么就赋值成功,如果不在,那么就赋值失败。
2、注意事项:但是注意如果一旦有变量参与表达式,那么就不会有编译期间的常量优化机制

这篇关于JavaSE系列教程(一)的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!