一、软件开发介绍
软件开发:
软件就是可以帮助人做事的工具(自我理解)。
软件,即一系列按照特定顺序组织的计算机数据和指令的集合。有系统软件和应用软件之分。
人机交互方式
- 图形化界面(Graphical User Interface GUI)这种方式简单直观,使用者易于接受,容易上手操作。
- 命令行方式(Command Line Interface CLI)需要有一个控制台,输入特定的指令,让计算机完成一些操作。较为麻烦,需要记住命令。
- 常用的 DOS 命令
- dir:列出当前目录下的文件以及文件夹
- md:创建目录
- rd:删除目录
- cd:进入指定目录
- cd..:退回上一级目录
- cd\:退回到根目录
- del:删除文件
- exit:退出 dos 命令行
- 补充:echo javase>1.doc
- 常用的快捷键
- 左右方向键:移动光标
- 上下方向键:调阅历史操作命令
- Delete 和 Backspace :删除字符
Pascal 之父 Nicklaus Wirth:" Algorithms + Data Structures = Programs ".
二、计算机编程语言介绍(尤指 Java)
计算机语言:就是人与计算机进行沟通的工具(方式)。
计算机语言的种类:C,C++,Java,PHP,Kotlin,Python,Scala等。
2.1 计算机语言的发展
- 第一代语言
- 机器语言:指令以二进制代码形式存在。
- 第二代语言
- 汇编语言:使用助记符表示一条机器指令。
- C、Pascal、Fortran 面向过程的语言
- C++ 面向过程/面向对象
- Java 跨平台的纯面向对象的语言
- .NET 跨语言的平台
- Python、Scala......
2.2 Java 语言概述
- 是 SUN ( Stanford University Network , 斯坦福大学网络公司 ) 1995年推出的一门高级编程语言。
- 是一种面向 Internet 的编程语言。Java 一开始富有吸引力是因为 Java 程序可以在 Web 浏览器中运行。这些 Java 程序被称为 Java 小程序 (applet)。applet 使用现代的图形用户界面与 Web 用户进行交互。applet 内嵌在 HTML 代码中 。
- 随着 Java 技术在 Web 方面的不断成熟,已经成为 Web 应用程序的首选开发语言。
- 后台开发:Java、PHP、Python、Go、Node.js
2.3 Java 语言简史
2.4 Java 技术体系平台
2.5 Java 在各领域的应用
从Java的应用领域来分,Java语言的应用方向主要表现在以下几个方面:
- 企业级应用:主要指复杂的大企业软件系统、各种类型的网站。Java 的安全机制以及它的跨平台的优势,使它在分布式系统领域开发中有广泛应用。应用领域包括金融、电信、交通、电子商务等。
- Android平台应用:Android应用程序使用 Java语言编写。Android 开发水平的高低很大程度取决于 Java 语言核心能力是否扎实。
- 大数据平台开发:各类框架有 Hadoop、spark、storm、flink 等,就这类技术生态圈来讲,还有各种中间件如 flume、Kafka、sqoop 等等,这些框架以及工具大多数是用 Java 编写而成,但提供诸如 Java、Scala、Python、R 等各种语言 API 供编程。
- 移动领域应用:主要表现在消费和嵌入式领域,是指在各种小型设备上的应用,包括手机、PDA、机顶盒、汽车通信设备等。
2.6 Java 语言的主要特性
- Java 语言是安全的。Java通常被用在网络环境中,为此,Java 提供了一个安全机制以防恶意代码的攻击。如:安全防范机制(类 ClassLoader),如分配不同的名字空间以防替代本地的同名类、字节码代码检查。
- Java 语言是体系结构中立的。Java 程序(后缀为 java 的文件)在Java 平台上被编译为体系结构中立的字节码格式(后缀为 class 的文件),然后可以在实现这个 Java 平台的任何系统中运行。
- Java 语言是解释型的。如前所述,Java 程序在 Java 平台上被编译为字节码格式,然后可以在实现这个 Java 平台的任何系统的解释器中运行。
- Java 是性能略高的。与那些解释型的高级脚本语言相比,Java 的性能环视较优的
- Java语言是原生支持多线程的。在 Java 语言中,线程是一种特殊的对象,它必须由 Thread 类或其子(孙)类来创建。
2.7 Java 语言的特点
- 面向对象
- 两个基本概念:类、对象
- 三大特性:封装、继承、多态
- 健壮性
- 吸收了 C/C++ 语言的优点,但去掉了其影响程序健壮性的部分(如指针、内存的申请与释放等),提供了一个相对安全的内存管理和访问机制。
- 跨平台性
- 跨平台性:通过 Java 语言编写的应用程序在不同的系统平台上都可以运行。“Write once,Run Anywhere”
- 原理:只要在需要运行 java 应用程序的操作系统上,先安装一个 Java 虚拟机(JVM Java Virtual Machine)即可。由 JVM 来负责 Java 程序在该系统中的运行。
2.8 Java 语言运行机制及运行过程
- Java 两种核心机制
- Java 虚拟机(Java Virtal Machine)
- 垃圾收集机制(Garbage Collection)
- JVM 是一个虚拟的计算机,具体指令集并使用不同的存储区域。负责执行指令,管理数据、内存、寄存器。
- 对于不同的平台,有不同的虚拟机
- 只有某平台提供了对应的 java 虚拟机,java 程序才可在此平台运行
- Java 虚拟机机制屏蔽了底层运行平台的差别,实现了“一次编译,到处运行”
- 核心机制 —— 垃圾回收
- 不再使用的内存空间应回收 —— 垃圾回收
- 在C/C++ 等语言中,由程序员负责回收无用内存
- Java 语言消除了程序员回收无用内存空间的责任;它提供一种系统级线程跟踪存储空间的分配情况。并在 JVM 空闲时,检查并释放那些可被释放的存储空间。
- 垃圾回收在 Java 程序 运行过程中自动进行,程序员无法精确控制和干预。
- 但Java 程序还会出现内存泄漏和内存溢出的问题。
三、Java 语言的环境搭建
JDK,JRE
JDK、JRE、JVM 的关系
运行Java 程序
四、注释(comment)
目的:为了解释说明代码
Java 中的注释类型
- 单行注释 //
- 多行注释 /* */
- 文档注释(Java 特有) /** */
注释的作用
- 提高了代码的阅读性,调试程序的重要方法
- 注释是一个程序员必须要具有的良好编程习惯
- 将自己的思想通过注释先整理出来,再用代码去体现
五、Java API 的文档
- API (Application Programming Interface,应用程序编程接口)是 Java 提供的基本编程接口。
- Java 语言提供了大量的基础类,因此 Oracle 也为这些基础类提供了相应的 API 文档,用于告诉开发者如何使用这些类,以及这些类里包含的方法。
- 下载 API
- 地址:http://www.oracle.com/technetwork/java/javase/downloads/index.html
六、对第一个 Java 程序的总结
- java 程序编写 -> 编译 -> 运行的过程
- 编写:我们将编写的 java 代码保存在以“ .java ” 结尾的源文件名 .java
- 编译:使用 javac.exe 命令编译我们的 java 源文件。格式:javac 源文件名.java
- 运行:使用 java.exe 命令解释运行我们的字节码文件。格式:java 类名
- 在一个 java 源文件中可以声明多个 class。但是,只能最多有一个类声明为 public 的。而且要求声明为 public 的类名的类名必须与源文件的文件名相同。
- 程序的入口是 main() 方法,格式是 固定的
- 输出语句
- System.out,println(); // 先输出数据,然后换行
- System.out.print(); // 只输出数据
- 每一行的执行语句都以“ ; (英文状态下的分号)”结束。
- 编译的过程:编译以后,会生成一个或多个字节码文件。字节码文件的文件名与 java 源文件中的类名相同。
七、其他
良好的编程风格
常用的 Java 开发工具(Integrated Development Environment)
- 文本编辑工具:
- 记事本
- UltraEdit
- EditPlus
- TextPad
- NotePad
- Java 集成开发环境(IDE)
- JBuilder
- NetBeans
- Eclipse
- MyEclipse
- IntelliJ IDEA