Java基础(001)-写在开头

|6284字|366阅读

java简介

1.java是什么?

java是一种高级的面向对象的程序设计语言 。

2.JVM

Jvm(Java Virtual Machine),是java程序跨平台的关键,不同的平台有不同的JVM,而java字节码不包含任何与平台相关的信息,不直接与平台交互,而是通过JVM间接与平台交互。应用程序在执行时,JVM加载字节码,将字节码解释成特定平台的机器码,让平台执行。

任何一个应用程序都必须转化为机器码,才能与计算机进行交互,如果机器码的来源依赖于具体的平台,那么这个应用程序就不能跨平台。而java应用程序运行时机器码由java体系的一部分JVM提供,不受平台的限制,所以实现了跨平台。

3.java程序运行过程

程序员编写的源码经编译器编译转化为字节码,字节码被加载到JVM,由JVM解释成机器码在计算机上运行。
java程序运行过程

4.java版本

针对不同的用途,java分为3个版本:
  1. Java SE:java的标准版,是其他版本的基础,主要用于开发桌面应用程序。
  2. Java EE:java的企业版,主要用于开发企业级分布式网络程序。
  3. Java ME:主要用于嵌入式系统开发。

5.JDK

JDK(Java Develop Kits),使用java语言开发应用程序必备的工具包,主要包含包括了编译器、JVM、Java基础API等。

6.JRE

JRE(Java Run Environment),java运行所依赖的环境,包括JVM以及java基础API。

7.API

API(Application Programming Interface),应用程序编程接口,是使用java语言编写应用程序的入口,包含源码、字节码帮助文档三部分。应用程序由一系列方法构成,方法有哪些要求?什么样的方法是编程语言接受的?API提供了一些基础的方法,程序员要实现某项功能必须遵循java语言规范,调用这些方法编写更高级的方法。

8.java特性

  1. 简单:java语言是从C++发展起来的,取消了C++中复杂难以掌握的部分,如指针。
  2. 面向对象:java语言的基础。java将一切问题都看做对象与对象之间的交互,将对象抽象成方法与属性的集合。
  3. 分布性:包含操作分布性与数据分布性两个方面。操作分布性是指由多个主机共同完成一项功能,数据分布性是分布在多台主机上的数据当做一个完成的整体处理。
  4. 跨平台:java语言编写的应用程序,不受平台限制,可以由一种平台迁移到另一种平台。
  5. 解释型:使用java语言编写的源码被转化为字节码,字节码只有被JVM解释成机器码才能被计算机执行。
  6. 安全性:java语言的底层设计可以有效避免非法操作。
  7. 健壮性:java提供了许多机制防止运行时出现严重错误,如编译时类型检查、异常处理。
  8. 多线程:java支持多线程,允许进程内部多个线程同时工作。

Java基础知识学习大纲


第一部分 Java 语言简介

  • 1.1. java 的历史渊源及发展前景
  • 1.2. java 开发方向:java SE/java ME/java EE

第二章 开发环境搭建

  • 2.1. JDK 与 JRE 关联与区别

  • 2.2. 开发环境搭建

  • JDK 安装

  • jdk 目录结构

  • path 环境变量

  • classpath 环境变量

编辑器

  • notepad++/Editpuls/UltraEdit:文本编辑器,入门推荐

  • Eclipse:IDE,插件式,通用灵活,中期可用

  • Inteilj Idea:IDE,功能更强大,新宠,java EE 和 java web 开发必备

2.3. 第一个程序:helloWorld.java

第三章 Java 语言基础

3.1. 基本语法

  • 关键字

  • 标识符

  • 变量名:eg.phoneNumber

  • 常量名:eg.IP_ADDRESS

  • 函数名:eg.getName

  • 类名:eg.Person

  • 注释

  • 单行注释

  • 多行注释

  • 文档注释

  • 常量

3.2. 数据类型

  • 基本数据类型:byte/short/int/long/float/double/boolean/char

  • 引用类型:类 接口 数组 枚举

  • 字符串:String

3.3. 基本语法

  • 运算符

  • 算数运算符

  • 赋值运算符

  • 比较运算符

  • 逻辑运算符

  • 位运算符

  • 访问修饰符

  • public(公有)

  • default(默认)

  • protected(保护)

  • private(私有)

  • 基本结构语句

  • 顺序结构语句

  • 选择结构语句

  • if 语句

  • switch 语句

  • 循环结构语句

  • while 循环

  • do while 循环

  • for 循环

  • foreach 循环

  • 循环控制 break/contunue

  • 函数方法

  • 方法基础

  • 方法定义

  • 方法调用

  • 参数传递:

  • 值传递

  • 引用传递

  • 变量作用域

  • 全局变量

  • 局部变量

  • 重载方法

  • 函数名称相同

  • 返回值、参数类型、参数个数不完全相同

  • 递归方法:

  • 递归调用

  • 结束条件

  • 数组

  • 数组基础

  • 数组创建

  • 元素访问

  • 数组遍历

  • 一维数组

  • 多维数组(重点:二维数组)

  • 异常

  • 异常概念

  • 异常处理

  • try...catch

  • finally

  • throws

  • 异常分类

  • 编译时异常

  • 运行时异常

  • 自定义异常

第四章 Java 面向对象

4.1. 类和对象

  • 类的定义

  • 类的创建和使用

  • 类成员的封装

  • 属性

  • 方法

4.2. 构造方法

  • 构造方法的定义

  • 构造方法的重载

  • this 关键字的使用

  • super 关键字的使用

4.3. 内部类

  • 成员内部类

  • 静态内部类

  • 方法内部类

  • 匿名内部类

4.4. 继承

  • 继承的实现 extends

  • 重写父类方法

  • 抽象类 abstract class

  • 接口 implments

  • 抽象类和接口的区别和联系

4.5. 多态

  • 多态的实现

  • 对象的类型转换

4.6. 关键字

  • final 关键字

  • final 变量

  • final 方法

  • final 类

  • static 关键字

  • 静态变量

  • 静态方法

  • 静态代码块

  • 应用:单例模式

第五章 Java 泛型

5.1. 泛型入门

  • 编译时不检查类型的异常

  • 手动实现编译时检查类型

  • 使用泛型

5.2. 深入泛型

  • 定义泛型接口、类

  • 从泛型类派生子类

  • 不存在泛型类

5.3. 类型通配符

  • 类型通配符?

  • 设定类型通配符的上限

  • 设定类型通配符的下限

  • 设定类型形参的上限

5.4. 泛型方法

  • 定义泛型方法

  • 泛型方法和类型通配符的区别

  • 泛型方法与方法重载

5.5. 擦除和转换

5.6. 泛型与数组

第六章 - Java 集合类

6.1. 集合的分类

6.2. collection 接口

  • List 接口

  • ArrayList 用法及原理

  • vector 用法及原理

  • LinkedList 用法及原理

  • Set 接口

  • HashSet 用法及原理

  • TreeSet 用法及原理

  • LinkedHashSet 用法

6.3. Map 接口

  • HashMap 用法及原理

  • TreeMap 用法及原理

第七章 Java 输入输出流

7.1. 字节流

  • 普通的字节流:InputStream/OutputStream

  • 文件字节流:FileInputStream/FileOutputStream

  • 带缓冲的字节流:BufferedInputStream/BufferedOutpuStream

7.2. 字符流

  • 普通字符流:Reader/Writer

  • 文件字符流:FileReadr/FileWriter

  • 带缓冲的字符流:BufferedReader/BufferedWriter

  • 字节转字符流:InputStreamReader/OutputStreamWriter

7.3. File 类

  • 文件的创建、删除和重命名

  • 文件夹的创建、重命名、删除

  • 文件属性的读取

  • 文件属性的设置

  • 遍历文件夹

  • 文件的简单读写

第八章 Java 多线程

8.1. 进程与线程的基本概念

8.2. 线程的创建

  • 继承 Thread 类

  • 实现 Runnable 接口

  • 两种创建方式的比较

8.3. 线程的声明周期及状态转换

8.4. 线程的调度

  • 线程的优先级 setPriority

  • 线程的休眠 sleep

  • 线程的让步 yeild

  • 线程的插队 join

8.5. 线程同步

  • 线程安全的概念及问题产生:原子性与可见性

  • 同步代码块

  • 同步方法

  • 死锁问题的产生及解决

8.6. 多线程线程间通信

第九章 Java 常用 API 使用

9.1. 字符串操作

  • String

  • StringBuffer

  • StringBuilder

9.2. 日期操作

  • Date 类

  • Calender 类

  • DataFormat 类

9.3. 系统相关

  • System 类

  • RunTime 类

9.4. 正则表达式

  • 创建正则表达式

  • 使用正则表达式

9.5. 其它常用类

  • Object 类

  • Math 类

  • Random 类

  • BitgInteger 类

第十章 注解 Annotation

10.1. 基本注解

  • 限定重写父类方法(@Override)

  • 标识已过时(@Deprecated)

  • 抑制编译器警告(@SuppressWarnings)

10.2. 自定义注解

  • 注解定义语法

  • 通过反射提取注解信息

10.3. 元注解

  • @Retention

  • @Target

  • @Documented

  • @Inherited

第十一章 类加载和反射

11.1. 类加载器

  • 类加载的基本机制

  • 创建并自定义类加载器

11.2. 通过反射查看类信息

  • 获取 Class 对象

  • 从 Class 中获取信息

  • 使用反射创建并操作对象

  • 创建对象

  • 调用方法

  • 访问属性值

  • 操作数组

第十二章 Java 网络编程

12.1. 网络编程基础知识

  • 网络协议 TCP/UDP

  • IP 地址和端口号

12.2. UDP 通信

  • 服务端 DatagramSocket

  • 客户端 DatagramPacket

12.3. TCP 通信

  • 服务端 ServerSocket

  • 客户端 Socket

第十三章 其他

13.1. 学习查阅 JDK API 文档

13.2. 学习 java 的垃圾回收机制

13.3. 学习 java 多线程并发编程

第十四章 推荐阅读 JDK 源码

  • java.lang.String

  • java.lang.Integer

  • java.lang.Long

  • java.lang.Enum

  • java.math.BigDecimal

  • java.lang.ThreadLocal

  • java.lang.ClassLoader & java.net.URLClassLoader

  • java.util.ArrayList & java.util.LinkedList

  • java.util.HashMap & java.util.LinkedHashMap & java.util.TreeMap

  • java.util.HashSet & java.util.LinkedHashSet & java.util.TreeSet

参考

|6284字|366阅读
         
返回顶部