学于尚硅谷开源课程 宋红康老师主讲 感恩
尚硅谷官网:http://www.atguigu.com
尚硅谷b站:https://space.bilibili.com/302417610?from=search&seid=2366509055519973440
微信搜索”艺术行者”,关注并回复关键词”javase”获取视频和教程资料!
第一部分 课程整体内容概述
第二部分 基础常识
软件:即一系列按照特定顺序组织的计算机数据和指令的集合。分为:系统软件 和 应用软件
系统软件:windows , MacOS , linux ,unix,android,ios,….
应用软件:word ,ppt,画图板,…
人机交互方式:
图形化界面(Graphical User Interface GUI)这种方式简单直观,使用者易于接受,容易上手操作。
命令行方式(Command Line Interface CLI):需要有一个控制台,输入特定的指令,让计算机完成一些操作。较为麻烦,需要记录住一些命令。
Pascal之父Nicklaus Wirth:“Algorithms+DataStructures=Programs”
应用程序 = 算法 + 数据结构
常用DOS命令:
注:此处针对的是windows系统的命令行下的命令
常用MacOS终端下的命令:
注:本人的电脑是Macbook Air,故列出相应的命令
ls:列出当前目录下的文件以及文件夹
mkdir:创建目录
rmdir:删除目录
cd:进入指定目录
cd ..:退回到上一级目录
cd /:进入根目录
rm:删除文件
2.计算机语言的发展迭代史
第一代:机器语言
机器语言是用二进制代码表示的、计算机能直接识别和执行的一种机器指令的集合。它是计算机的设计者通过计算机的硬件结构赋予计算机的操作功能。机器语言具有灵活、直接执行和速度快等特点。不同种类的计算机其机器语言是不兼容的,按某种计算机的机器指令编制的程序不能在另一种计算机上执行。
W65C816S 机器代码
第二代:汇编语言
汇编语言(英语:assembly language)是任何一种用于电子计算机、微处理器、微控制器,或其他可编程器件的低级语言。在不同的设备中,汇编语言对应着不同的机器语言指令集。一种汇编语言专用于某种计算机系统结构,而不像许多高级语言,可以在不同系统平台之间移植。
使用汇编语言编写的源代码,然后通过相应的汇编程序将它们转换成可执行的机器代码。
Motorola_6800_Assembly_Language.
第三代:高级语言
高级编程语言(High-level programming language)是高度封装了的编程语言,与低级语言相对。它是以人类的日常语言为基础的一种编程语言,使用一般人易于接受的文字来表示,有较高的可读性,以方便对电脑认知较浅的人亦可以大概明白其内容。由于早期电脑业的发展主要在美国,因此一般的高级语言都是以英语为蓝本。在1980年代,当东亚地区开始使用电脑时,在日本、台湾及中国大陆都曾尝试开发用各自地方语言编写的高级语言,当中主要都是改编BASIC或专用于数据库数据访问的语言,但是随着编程者的外语能力提升,现时的有关开发很少。
> 面向过程:C,Pascal、Fortran
C是一种通用的编程语言,广泛用于系统软件与应用软件的开发。于1969年至1973年间,为了移植与开发UNIX操作系统,由丹尼斯·里奇与肯·汤普逊,以B语言为基础,在贝尔实验室设计、开发出来。
c语言编写的HelloWorld程序
> 面向对象:Java,JS,Python,Scala,…
Java是一种广泛使用的计算机编程语言,拥有跨平台、面向对象、泛型编程的特性,广泛应用于企业级Web应用开发和移动应用开发。
任职于太阳微系统的詹姆斯·高斯林等人于1990年代初开发Java语言的雏形,最初被命名为Oak,目标设置在家用电器等小型系统的编程语言,应用在电视机、电话、闹钟、烤面包机等家用电器的控制和通信。由于这些智能化家电的市场需求没有预期的高,太阳计算机系统(Sun公司)放弃了该项计划。随着1990年代互联网的发展,Sun公司看见Oak在互联网上应用的前景,于是改造了Oak,于1995年5月以Java的名称正式发布。Java伴随着互联网的迅猛发展而发展,逐渐成为重要的网络编程语言。
JAVA语言编写的HelloWorld程序
3.Java语言版本迭代概述
- · 1991年 Green项目,开发语言最初命名为Oak (橡树)
- · 1994年,开发组意识到Oak 非常适合于互联网
- · 1996年,发布JDK 1.0,约8.3万个网页应用Java技术来制作
- · 1997年,发布JDK 1.1,JavaOne会议召开,创当时全球同类会议规模之最
- · 1998年,发布JDK 1.2,同年发布企业平台J2EE
- · 1999年,Java分成J2SE、J2EE和J2ME,JSP/Servlet技术诞生
- · 2004年,发布里程碑式版本:JDK 1.5,为突出此版本的重要性,更名为JDK 5.0
- · 2005年,J2SE -> JavaSE,J2EE -> JavaEE,J2ME -> JavaME
- · 2009年,Oracle公司收购SUN,交易价格74亿美元
- · 2011年,发布JDK 7.0
- · 2014年,发布JDK 8.0,是继JDK 5.0以来变化最大的版本
- · 2017年,发布JDK 9.0,最大限度实现模块化
- · 2018年3月,发布JDK 10.0,版本号也称为18.3
- · 2018年9月,发布JDK 11.0,版本号也称为18.9
4.Java语言应用的领域:
>Java Web开发:后台开发
>大数据开发:
>Android应用程序开发:客户端开发
5.Java语言的特点
> 面向对象性:
两个要素:类、对象
三个特征:封装、继承、多态
> 健壮性:① 去除了C语言中的指针 ②自动的垃圾回收机制 –>仍然会出现内存溢出、内存泄漏
> 跨平台型:write once,run anywhere:一次编译,到处运行
功劳归功于:JVM
第三部分 开发环境搭建
1.开发环境的搭建(重点)
1.2 JDK的下载、安装
下载:官网,github
官网:https://www.oracle.com/java/technologies/javase-downloads.html
安装:傻瓜式安装:JDK 、JRE
注意问题:安装软件的路径中不能包含中文、空格。
1.3 path环境变量的配置
1.3.1 为什么配置path环境变量?
path环境变量:windows操作系统执行命令时所要搜寻的路径
为什么要配置path:希望java的开发工具(javac.exe,java.exe)在任何的文件路径下都可以执行成功。
1.3.2 如何配置?
注:MacOS的配置文件是~/.bash_profile,具体配置可以参考 配置的文章
第四部分 第一个Java程序
1.开发体验——HelloWorld
1.1 编写
创建一个java源文件:HelloWorld.java
class HelloChina{
public static void main(String[] args){
System.out.println(“Hello,World!”);
}
}
1.2 编译:
javac HelloWorld.java
1.3 运行:
java HelloChina
2.常见问题的解决
3.总结第一个程序
1. java程序编写-编译-运行的过程
编写:我们将编写的java代码保存在以”.java”结尾的源文件中
编译:使用javac.exe命令编译我们的java源文件。格式:javac 源文件名.java
运行:使用java.exe命令解释运行我们的字节码文件。 格式:java 类名
2.在一个java源文件中可以声明多个class。但是,只能最多有一个类声明为public的。而且要求声明为public的类的类名必须与源文件名相同。
3. 程序的入口是main()方法。格式是固定的。public static void main(String[] args){…}
4. 输出语句:
System.out.println():先输出数据,然后换行
System.out.print():只输出数据
5.每一行执行语句都以”;”结束。
6.编译的过程:编译以后,会生成一个或多个字节码文件。字节码文件的文件名与java源文件中的类名相同。
第五部分 注视和API文档等
1.注释:Comment
分类:
单行注释://
多行注释:/* */
文档注释:/** */
作用:
① 对所写的程序进行解释说明,增强可读性。方便自己,方便别人
② 调试所写的代码
注释是一个程序员必须要具有的良好编程习惯
将自己的思想通过注释先整理出来,再用代码去体现
特点:
①单行注释和多行注释,注释了的内容不参与编译。
换句话说,编译以后生成的.class结尾的字节码文件中不包含注释掉的信息
② 文档注释的内容可以被JDK提供的工具 javadoc 所解析,生成一套以网页文件形式体现的该程序的说明文档。
③ 多行注释不可以嵌套使用
2.Java API 文档:
API:application programming interface。习惯上:将语言提供的类库,都称为api.
API文档:针对于提供的类库如何使用,给的一个说明书。类似于《新华字典》
3.良好的编程风格
第六部分 EditPlust的使用
1.开发工具说明:
2.EditPlus的使用:
注:此处本人学习时使用的MacOS软件是