[计算机基础知识概论]
1. 计算机是由硬件和软件组成, 为了人类服务的.
简单来说: 计算机有硬件和软件, 解决人类的需求.
计算机: 科学计算... 看新闻, 看电影. 文本编辑... 打代码... 玩游戏...
2.硬件
中央处理器:
cpu , 大脑, 执行指令... 并控制计算机
运算器, 控制器.
主存储器:
内存... 存储数据
断电 数据丢失...
辅助存储器:
硬盘(固态,机械)
U盘, 光盘... 持久化存储数据
输出输出设备:
输入: 键盘,鼠标, 扫描仪...
输出: 显示器, 打印机
通信设备:
有线网卡,无线局域(广域),蓝牙, 红外...
3.软件
早期: 软件就是程序
程序=数据结构+算法...
现在:软件=数据+指令+文档的一个综合体...
软件: 解决特定问题, 实现特定的功能.
浏览器: 上网
看电影: 播放器.
软件:
系统软件
操作系统
操作系统也是一类特殊的软件...
windows linux mac osx unix ios android wphone 都是操作系统...
作用: 实现人机交互... 通过操作系统实现一些操作...
管理计算机分配资源... 计算机的资源是有限的... 但是要执行的任务无限的...
应用软件
办公软件, 浏览器. 录屏, 杀毒, ...
3. 操作系统
1. 图形化界面
windows mac osx
用户体验更好, 简单, 只需要鼠标就可以完成大部分操作...
2. 命令行
unix 60 年代 -> 美国 AT&T 贝尔实验室 使用 C语言 编写的操作系统...
linux 90年代 -> 芬兰 大学生 C 语言 早起都是命令行的
ms-dos 和IBM 合作... 给IBM 个PC 提供操作系统... 授权...
需要记忆指令,通过指令完场任务...
学习基本的dos 指令 ->学习会用到
3. 操作DOS
dir:
查看所在目录的子文件和子目录
md:
创建目录
cd
cd 目录名 -> 进入目录
cd .. 返回上一级... 退出..
cd /(上坡 正) \(下坡 反斜线) windows 中 是 \ linux 是 / 返回根目录
rd:
删除空目录
删除非空
rd /s/q
touch
生成一个文件, 带内容的
type
查看文件
del
删除文件.
磁盘盘符:
切换盘符
必须知道的: cd
拓展:
如何在dos 系统中启动飞秋 浏览器
切换到 飞秋软件所在的目录:
在dos 中输入飞秋软件的名称... .exe 可以省略 ,自动查找对应的.exe 程序.
注意: 如果所在的位置路径下没有 Feiq.exe 程序
会报错: 'Feiq' 不是内部或外部命令,也不是可运行的程序或批处理文件。
思考任务: 通过DOS 启动QQ 程序, 浏览器... 记事本
记事本: notepad.exe 程序 (记事本程序可以再dos 的任意路径下启动...)
想要和记事本一样,在任意路劲下启动飞秋程序... ?
4. 开发软件
计算机是一个电子设备,机器... 机器特点: 只识别0和1
电子管 晶体管 集成电路 通电的设备: 通电和断电... 电压: 高电压,低电压... 可以表示两种状态... 可以使用数字0 和1 表示...
0 和1 排列组合,可以表示信息...
早期: 通过计算机执行任务... 需要和计算机进行交流, 告诉计算机执行的任务...
计算机无法识别自然语言(人工智能), 需要通过机器语言才可以和计算机交流
低级:
机器语言:
0和1
1+1 =?
00000000 00000000 00000000 00000001 -> 1
00000000 11111111 00000000 11111111 -> +
00000000 00000000 00000000 00000001 -> 1
使用机器语言编写程序,非常难于编写和维护的...
为了提高软件开发的效率,降低难度.
使用机器语言开发程序: 计算机是可以直接执行的....
汇编语言:
使用助记符表示指令
使用add 表示+ 降低了难度
00000000 00000000 00000000 00000001 -> 1
add -> +
00000000 00000000 00000000 00000001 -> 1
注意: add 助记符,方便程序员编程,,, 计算机无法直接识别...
通过汇编语言编写的程序无法直接在计算机上执行的, 需要一个特殊的软件, 将汇编语言转换为机器语言(机器码 二进制)再执行.
汇编语言-> 汇编器->机器码(二进制) -> 执行
高级语言:
接近自然语言, 就像英语一样...
if(如果) else(否则) 这些单词出现在了高级语言中... 更加简单...
C C++ C# Java 都是高级语言...
通过高级语言编写的程序是不能直接运行的,一定需要编译,编译为机器码,才可以执行.
根据编译时间的不同:
编译型:
例如C 语言开发.
使用C语言写好程序(代码), 需要通过编译器进行编译. 编译为.exe 二进制的可执行文件(机器码), 然后即可执行...
只需要提前编译一次... 编译好之后,获取机器码就可以执行....
看电影: 中文字幕.
解释型:
高级语言开发程序时, 没有事先编译.
执行时,执行一条编译一条... 逐条的解释执行...
JavaScript 即使解释型...
看电影: 看英文版, 看一句,自己翻译一句
使用高级语言开发程序:
编译型:
编辑:
编写代码(编写源代码) -> 无法直接执行
编译:
使用编译器,将源代码编译为机器码(二进制文件)
运行:
执行二进制文件
[Java简介]
90年代, 美国Sun公司....
家用电器领域, 智能家电, 研发了操作系统, 需要计算机编程语言编写程序, 控制这些家电... 绿色计划,,, C C++ ...
詹姆斯 高斯林为首团队简化了C++ C-- 精简版... Oak语言...
失败了...
95年代Java 出现, 面向互联网应用...
Sun -> 被Oracle 70 多亿.
诺基亚 -> 被微软 70多亿
Java出现了3种架构:
JavaSE
标准版 -> 开发桌面应用
pc(个人电脑)的应用软件... 但是是基础... 基础班就是SE 部分...
JavaME
微型版 -> 嵌入式 , 手机, 诺基亚手机就有... 被安卓淘汰了
JavaEE
企业版 ->企业级开发, 很成功...
公司内部: OA , ERP(企业资源计划), 网银: ICBC 5亿, 1亿开通网银,,, 通过网络查看自己的账户... 动态网站... 高级的...
电子商城: 类似于京东,天猫的购物网站... 购物,订单,付款, 送货... 程序处理的... 动态网站...
学习了JavaSE,其实就是为了JavaEE 做储备...
Java -> 安卓(平台,操作系统)
在该平台下使用java语言开发应用 app
JavaSE 是必须要回的, JavaEE 中的一部分必须要会... JavaWeb 选择: JavaEE ? android ? 先把JavaSE 学好...
Java版本:
J2SE1.0 J2SE1.2 ...J2SE1.4 J2SE1.5(重大升级,新特性)
J2SE1.5 ->JavaSE5.0 (老虎)
重大升级: 泛型, 枚举, 静态导入, 自动装箱, 可变长参数.... 增强for ... 面临和微软的C#竞争...
JavaSE6.0(野马)
JavaSE7.0(海豚)
JavaSE8.0(?)
[Java特点并搭建Java开发和运行环境]
1. 特点:
Sun公司对Java语言的解释是:“Java编程语言是个简单、面向对象、分布式、解释性、健壮、安全与系统无关、可移植、高性能、多线程和动态的语言”。
2. 显著特点:
跨平台. 口号: 一次编写到处运行...
平台: 操作系统 linux windows 硬件 x86 x64 精简指令集cpu , 复杂指令集的cpu
即不依赖于操作系统,也不依赖具体的硬件环境。在一个平台下开发的应用,放到另一个平台下依然可以运行。 Java 程序就可以.
3. Java 跨平台:
相对于c 语言, Java 语言开发的程序是不同的...
window 下使用c 语言开发开发的程序,并且在windows 下编译后,变为了.exe 可执行文件, 只能在windows 下运行. 想要在linux 运行, 需要重新编译...
window 下使用java 语言开发的程序,编译之后之后,变为.class 程序, 在window 可以运行, 在linux 也可以运行,不需要重新编译... 只需要编译一次,保证多处运行了.
4. JVM
java 依靠的是Java 虚拟机实现的跨平台.
执行java 程序时, 程序不是直接在操作系统上运行的, 而是运行在JVM 之上的.
执行java 程序时, jvm 会先执行, 有jvm 执行Java 程序...
必须明白: 特定的平台必须要有对应的jvm 才能运行java 程序, 如果一个平台没有对应的jvm无法运行java 程序
5.运行Java 程序(JRE):
java 程序的使用人员
需要安装JVM , windows 系统,需要下载windows 版本的JVM ... 去 www.oracle.com 下载...
注意: JVM 不是独立存在的, 无法直接下载...
JRE:
Java Runtime Environment ->Java 运行环境.
Do you want to run JavaTM programs, or do you want to develop Java programs?
f you want to run Java programs, but not develop them, download the Java Runtime Environment, or JRE.
如果只需要运行Java 程序, 只需要安装JRE 即可...
JRE=JVM+核心类库... JRE 包含了JVM
6.开发java 程序(JDK)
java 程序的开发人员
JDK
Java Development Kit -> Java 开发工具集(包)
JDK= Java 开发工具 +JRE
作为开发人员只需要下载和安装JDK 即可, JDK 自带了JRE .
类库 Java 提供丰富的强悍的程序,可以直接使用...
JDK=开发工具+JRE
JRE=JVM+类库
JVM: Java 最为基本的跨平台的基础...
7.安装JDK
下载好的JDK 例如: jdk-6u20-windows-i586.exe
安装普通软件一样: 一路下一步即可 会默认安装到c盘...
注意: 不要安装在系统盘下, 建议在非系统盘创建一个java 目录专业的保存JDK
jdk 安装完毕之后, 通过dos 命令进入JDK 的bin 目录:
输入 javac java java -version 查看是否安装成功...
8.JDK 目录组成:
bin 目录:
存放的是.exe 的可执行文件, 就是Java 的开发工具...
java -> java.exe
javac -> javac.exe
想要使用到Java 开发工具, 在dos 中必须要进入到开发工具所在的目录, 离开该目录无法使用了...
demo: java 示例
jre: jdk 自带的jre
src.zip 压缩文件... java 源代码... Java 是开源的... 提供了源代码(.java 形式的)
9. 开发一个简单的java 程序:
JDK 装好了.
1.编辑
使用记事本新建一个Demo1.java 文件, java的源文件.
输入:
public class Demo1{
public static void main(String [] args){
System.out.println("hello,world");
}
}
2.编译
使用JDK 提供的开发工具
编译源代码: javac.exe java 编译器...
进入.java 源文件的目录, 使用javac 编译器编译源代码. 会生成.class 文件
3.运行
使用JDK 提供的工具:
java 类名
注意: 不要添加.class 会报错...
问题:
开发Java 程序, 需要使用到Java 的开发工具, 但是java 开发工具在JDK 的bin 目录, 每次使用都需要进入bin 目录中,很麻烦...
问题: 想要在任意路径下启动飞秋... 发现记事本可以再任意路径下启动... 如果解决在任意路径下执行Java 的开发工具? javac.exe java.exe
为什么记事本可以任意路径启动...
为什么飞秋, jdk 的开发工具却无法再任意路径下执行?
在DOS 中执行可执行文件(.exe 文件).
必须要进入可执行文件所在的目录, 如果在当前目录下没有找到可执行文件,直接报错?
记事本没有, 将飞秋程序拷贝到windos 目录中也不会报错了... 不但会在当前目录下找, 还会在系统的windows 目录中查找可执行文件.
想要在任意路径下执行可执行文件:
path 可以解决的.
4. PATH 环境变量
path: 路径的意思, 保存的是一个路径... 路径之间通过; 隔开..
其实windows 执行可执行文件时, 会先在当前路径下查找,如果找到直接执行, 没有找到, 回去path 环境变量中找,如果找到,可以执行, 没有找到,报出错误.
set path
查看path环境变量:
set path=路径;
set path=D:\Java\jdk1.6.0_20\bin 将JDK 开发工具所在的路径添加到了path 环境变量中,可以保证在dos 的任意路径下都可以使用到java 的开发工具了.
注意: 该方式,新值覆盖旧值
如何: 既保留旧值,有可以添加新值.
set path=新值;%path%
%path% 是引用旧值...
注意: 在dos 中设置的path 环境变量设置的路径只对当前窗口有效,关闭窗口,无效了... 希望配置一次,永久使用...
5. 永久配置path 环境变量:
我的电脑->属性->高级->环境变量-> 系统变量->Path
将JDK 开发工具所在的路径添加到path 中. 注意: 添加的新值和旧值之间通过;(分号)隔开.
6. 注意修改path 环境变量的问题:
如果需要更换JDK , 必须要修改path 环境变量. 如果频繁的修改path ,很容易出现误操作(误删)
设置JAVA_HOME 变量, 在JAVA_HOME 中保存的是 JDK 开发工具的路径.
在PATH环境变量中引用了JAVA_HOME 的值
如果需要更换JDK ,只需要修改JAVA_HOME 即可...
练习:
path
java_home
小结:
Java 是什么:
Java 是计算机高级编程语言. 可以开发程序.
Java 是一个运行环境 可以运行Java 程序.
Java 是一个开发环境
提供了众多的开发工具
javac.exe -> 编译器 编译.java 源代码
java.exe -> 启动JVM , 运行Java 程序.
jar.exe -> 打包
javadoc.exe -> 生成文档(网页格式说明书)
javap.exe -> 查看.class 字节码文件的(反编译)
[hello,world]
注意事项:
1.注意单词大小写.
2.注意:
如果运行java 程序时遇到了 : Exception in thread "main" java.lang.NoSuchMethodError: main
你的程序中少一段代码:
public static void main(String[] args){
}
叫做主函数.
3. 编译文件时,出现: javac: 找不到文件: Demo11.java
要么是该.java 文件不存在,要么文件名错了.
4. 运行时: Exception in thread "main" java.lang.NoClassDefFoundError: Demo11
如果运行时出现该错误, 说明要么该类不存在,或者类名有误
java 类名 如果类名有误, JVM 加载类会失败,就会报错...
5. 新建.java 源文件时
注意文件的后缀和文件的类型,必须是一个.java 文件,不能使文本文件.
选择开发工具:
记事本
高级记事本 UE 暂时使用UE
IDE 集成开发环境 eclipse
[classpath]
JAVA 程序编译完成之后,生成.class 字节码文件... 可以运行了.
但是想要运行.class 字节码文件,必须进入.class文件所在的目录.
想要在任意路径下执行java 程序->在dos 中的任意目录中都可以执行到.class 文件(想要在任意路径下执行class文件)
注意:
classpath用户配置.class 文件的路径, 为了保证在dos 的任意路径中都能执行指定的java .class 文件.
但是如果没有配置classpath , java 默认在当前路径下查找.class . 如果配置了classpath, java 只会在classpath 中查找...
解决问题:
设置的classpath环境变量可以优先查找当前目录...
可以将当前目录配置到classpath 中.
set classpath=.;指定路径
在基础班:
很少配置classpath , 在哪个路径下编译的.java 程序,就会在哪个路径下执行...
1.4的旧JDK
必须配置classpath ,会报错... jdk1.5 之后, 不配,java 会默认在当前路径下找...
总结:
上网,浏览Oracle 官网, 下载最新版JDK JRE
Path 环境变量作用
JAVA_HOME 作用
CLASSPATH 作用.
找答案:
true false null 不是java 关键字.是字面值...
预习Java 基础语法知识:
关键字, 标识符, 常量, 变量,函数