没有合适的资源?快使用搜索试试~ 我知道了~
2. Java 的基本语法 . 4. Java 高级语法特性 2. Java 的基本语法
资源详情
资源评论
资源推荐
Java 应用技术学习笔记
RandomStar
目录
Java 应用技术学习笔记 1
1:Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.1 Java 语言的特性 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.2 JDK 的版本 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.3 Java 程序的组成 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
� 作业里一道莫名其妙的题目 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
2. Java 的基本语法 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
2.1 Java 的变量命名 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
2.2 选择语句 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
2.3 数学函数 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
2.4 字符和字符串类型 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
2.5 循环 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
2.6 方法 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
2.7 数组 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
3. Java OOP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
3.1 类和对象 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
3.2 包装类 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
3.3 Constant Pool 常量池 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
3.4 String 的语法特性 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
3.5 枚举类 Enum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
3.6 继承和多态 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
3.7 Java 的内置模板类 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
3.8 关键词 protected . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
3.9 嵌套类 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
3.10 抽象类和接口 Abstract class and Interfaces . . . . . . . . . . . . . . . . . . . . . 28
4. Java 高级语法特性 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
4.1 异常处理 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
4.2 Assertion 断言 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
1
4.3 文本读写 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
4.4 Generics 泛型 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
1:Introduction
1.1 Java 语言的特性
• 简洁
– 没有 C/C++ 中的指针,没有多重继承和运算符重载的语法特性
• 面向对象
– Java 设计的核心是如何复用代码,并且支持继承封装多态
• Interpreted
– 代码会编译成字节码 (bytecode) 在 Java 虚拟机上运行
– Java 是跨平台的,可以在所有有 JVM 的计算机上运行,JMV 可以设置不同的安全等
级
• 鲁棒性
– 强类型机制,异常处理,垃圾内存自动搜集等机制
1.2 JDK 的版本
• Java Standard Edition (J2SE)
– 可以用于开发客户端应用和 app
• Java Enterprise Edition (J2EE)
– 可以用于开发服务端应用,比如 Java Servlets
• Java Micro Edition (J2ME)
– 开发手机应用
• 本课程中的内容主要是 J2SE
2
1.3 Java 程序的组成
• 一个简单的 Java 程序
public class HelloWorld{
public static void main(String[] args) {
System.out.println("Hello World!");
}
}
• Java 代码编译的过程
– Java 代码文件的后缀名是.java,被 Java 编译器编译之后编译成.class 文件,之后
在 JVM 中运行
• 每个 Java 程序至少需要一个 class,每个 class 都有唯一的 class name
– block 是 java 程序的组件,比如一个类就是一个 class block
• Java 程序中的错误
– 语法错误 Syntax Error:会在编译期间被检查出来,因此有语法错误的时候无法通过
编译
– 运行时错误 Run time Error:
– 程序逻辑上本身的错误
� 作业里一道莫名其妙的题目
• 对于下面的这样一个 Java 程序,它可以通过编译但是运行的时候会因为没有入口 main 函
数而出现错误
– 这是因为 Java 的编译器会把类编译成 class 文件,下面这个类是一个合法的类,没有
语法错误,因此可以通过编译
– 但是在 JVM 中执行的时候会因为没有入口 main 函数而出现错误
public class main {
public void main() {
System.out.println("Hello World!");
3
}
}
2. Java 的基本语法
2.1 Java 的变量命名
• 变量:包含大小写字母,数字,下划线和 $ 符号
– Java 中的变量不能用数字开头,也不能是保留字
• 变量的定义和声明
– Java 中不区分变量的声明和定义,这是和 C/C++ 的最大不同
∗ C/C++ 中的编译器不会为基本类型赋予初始默认值
– Java 对于方法的局部变量,Java 以编译时错误来保证变量在使用前都能得到恰当的
初始化
∗ 但是 Java 对于方法内的单个变量不会赋予初始值,对于数组会赋予默认的值
• 对于下面这样一段代码
– 输出的结果是 0,因为变量进行了初始化但是没有赋予具体值
– Java 中 int 类型的默认值就是 0
public class JavaPractice {
static int array[] = new int[5];
public static void main(String a[]) {
System.out.println(array[0]);
}
}
• 常量定义 final datatype CONSTANTNAME = VALUE;
– nal 的主要用法有如下三种
∗ 修饰变量,表示变量的值不能改变,但是可以进行任何合法形式的初始化,相当
于 C/C++ 中的 const 类型
4
· 修饰类对象,表示这个变量不能再赋值成其他的对象,比如一个对象被 new
了之后,就不能再把它 new 成一个新的对象
∗ 修饰方法 method,表示一个 Java 函数不可更改,不能被重载
∗ 修饰类,表示这个类不能被继承,类中的所有方法也就变成了 nal 类型的
• Java 中的变量类型
– 数值型变量:Java 中整数类型的范围和运行的机器无关,这一点和 C/C++ 不同
∗ byte 8bit 有符号类型
∗ short 16bit 有符号类型
∗ int 32bit 有符号类型
∗ long 64bit 有符号类型
∗ oat 和 double 分别是 32bit 和 64bit 的 IEEE754 标准
– 字符类型 char
∗ 编码方式是 Unicode
∗ Java 中的一个 char 类型变量占 16bits,也就是 2 个字节
• 数值类型的读入
– 首先需要定义 Scanner 读入器 Scanner input = new Scanner(System.in)
– 之后可以用 input 的 nextInt 方法读取下一个整数,其他数据类型同理
• Java 中的数值运算:支持加减乘除取余等各种操作
– 除法中如整数除法的结果是整数,浮点数除法的结果浮点数
– 浮点数中 double 比 oat 更加精确,double 精确到 16 位,oat 精确到 8 位小数
– 几个特殊的浮点数值
∗ Double.POSITIVE_INFINITY 正无穷大
∗ Double.NEGATIVE_INFINITY 负无穷大
5
剩余35页未读,继续阅读
胡说先森
- 粉丝: 53
- 资源: 280
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 毕业设计项目源码-使用Matlab基于PSO工具箱的函数寻优算法实现.zip
- libusb源码,libusb是一个跨平台的用户空间USB库
- 独栋别墅图纸CAD图纸D025-两层-10.72&06.36米-施工图.dwg
- 甄嬛传后宫大合影(闲的没事....)
- SAP GUI for Windows 8.00 patch 7 64Bit
- 毕业设计项目源码-使用Matlab基于动态粒子群算法的动态环境寻优算法.zip
- 华为云会议安装包适配华为擎云L410 -1060 ARM架构
- 清空redis缓存脚本指令
- Keithley6517静电计测试软件,支持24通道切换,DAQ高速采集
- STM8S微控制器-寄存器操作指南
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论0