01.一步一步上手Java编程语言-我的思路

要讲的内容

知识点掌握程度
概述理解
如何学习Java思路理解

概述

观点

学习任何知识,我们必须要知道它的本质是什么,然后再分析它的行为与作用。

我为什么这样认为呢

因为如果不知道一个东西的本质,就无法分析它的行为与作用。

如果找不到一个东西的作用时?作为一个人,怎么能说服自己有动力去深入理解它呢?

所以我认为:理解一个东西本质和以及作用让我们有了一个学习的理由。让我们给自己一份学习的动力。

如何建立学习的线索

第一步:学习每一个知识点,我必须要理解它本质是什么东西

第二步:通过它的本质理解它的行为和作用

第三步:通过它的行为理解它的应用场景

第四步:通过它的应用场景圈定学习的范围

Java编程语言的学习

要求:根据以上提供的观点来学习的Java编程语言。

Java的本质是什么

Java本质上就是一门跨平台的编程语言。

通过这句话,我们知道就两个要学习的概念:跨平台编程语言 跨平台:意思就是指Java编写的程序可以在不同的操作系统(平台)上运行 编程语言:就是J指Java一门用于编写程序的计算机语言

跨平台的理解

说明

前提:我们必须要知道由于操作系统的底层接口不同。不同操作系统的软件是不可以跨平台的。如:windows操作系统下面的软件是不可以在Linux操作系统运行的。

问题:那么Java编写语言编写的程序是如何实现跨平台的呢?(矛盾)

Java编写的程序是运行在Java虚拟机(JVM)里面的。不管任何操作系统安装Java运行环境,就可以运行Java编写的程序。

问题:我们在Java官方里面只找到了JDK、JRE,没有JVM这个软件,它们是什么关系呢?

JDK:(Java Development Kit ),Java开发包,里面包括可JRE和开发人员使用的编译工具。(程序员使用)

JRE:(Java Runtime Environment),Java运行环境,仅仅包括了运行Java程序的JVM和基础支撑库。(软件使用者使用)

JVM:(Java Virtual Machine),Java虚拟机,就是用于运行Java程序的虚拟环境。

如图所示:

01.一步一步上手Java编程语言-我的思路

结论:综上所述,作为一个Java的开发人员,我们只要安装JDK就可以编译、运行Java程序了。里面包括了JRE以及JRE里面的JVM!

环境变量

前提:JDK需要安装,并且设置了环境变量才可以使用。

扩展问题:那么为什么需要配置环境变量JAVA_HOME和PATH呢?

JAVA_HOME:是让绿色版的Java软件可以找到Java的运行环境目录。如果不配置,绿色版的Java软件就找不到运行环境。

PATH:将JDK的bin目录放在path环境变量中,只是为了在命令行下,任何目录都可以访问到jdk/bin的命令。如果不配置,必须

只能在jdk/bin下编译Java程序。

编程语言的理解

说明

编程语言的本质就是一门语言。任何的语言都是由各种语法组成的,所以我们学习Java编程语言需要学习的就是语法!

自然界的语言语法要素:主谓宾、定状补、词汇

计算机编程语言(Java)语法要素:关键字运算符基础库

所以,我们学习Java编程语言只要学会两部分就可以了:

  • 第一部分:关键字+运算符组成的各种基础语法

  • 第二部分:基础类库的记忆

基础语法

问题:我们如何学习基础语法呢?

我们可以通过先理解语法结构是什么、再通过编写Demo核对语法结构是否正确的方式来学习。

如:

/**
  * 类的声明语法结构:
  * [修饰符] class <标识符> {  //类主体 }
  */
 public class Demo01{
     public static void main(String[] args){
         System.out.println("Hello World");
     }
 }

注:以上的代码段,语法结构中的[ ]表示可选的,<>表示必须的。

根据代码段,需要解决的问题有

  1. 修饰符是可选的,那么可以设置哪些修饰符呢?

  2. 标识符的规则与规范是什么呢?

  3. 一个文件里面可以有多个类吗?可以有多个共有类吗?为什么?

基础类库

Java的基础类库,就是Java的基础库,因为Java编程语言是通过类为一个最小单元组织API。所以我们称为类库。

基础类库,在java里面称为:library,"图书馆"的意思。那么类库是”图书馆“,我们开发人员就是图书馆管理员。作为一个图书馆管理员,我们可以将一个图书馆里面的书全部看完吗?不可以能!

问题:那么我们如何学习基础类库呢?

我们只要记住Java基础类库的分类就可以了。Java是通过包这个概念分类的。所以我记住JDK API的分包就可以。

如:

说明包名作用
语法支撑包(默认包)java.lang存放一些Java的语法支持的支持类。包括基础类型处理、线程、反射、注解等
帮助包java.util存放一些常用的复杂的数据结构的实现、时间、日期、集合、链表、键值对等
输入输出流包java.io存放阻塞流的操作API、包括各种输入、输出流
安全包java.security存放一些加密算法的实现,MD5、SH、DES等
 java.net存放TCP、UDP协议的实现
JDBC规范包java.sql存放使用JDBC规范操作数据库的API

思考

根据以上概述的,我感受到了先建立学习线索,圈定学习范围,再学习具体知识的好处了吗?

 

相关推荐