1.计算机的硬件和软件
1.1计算机的组成:硬件+软件
计算机硬件:CPU,内存,存储设备(硬盘,光盘,磁带),输入设备(键盘,鼠标),输出设 备(显示,打印机),通信设备
计算机软件 :系统软件,应用软件
1.2 CPU、硬盘、内存
cpu中央处理器:电脑靠CPU云端、控制
硬盘:
计算机最主要的存储设备,容量大,断电数据不易丢失
正常分类:机械硬盘HDD,固态硬盘SSD,混合硬盘SSHD
固态硬盘在开机速度和程序加载速度远远高于机械硬盘,
缺点是价格贵,所以无法完全取代机械硬盘
内存:
负责硬盘上的数据与CPU之间数据交换处理
保存从硬盘读取的数据,提供给CPU;
保存CPU的一些临时执行结果以便CPU下次使用或保存到硬盘
断电后数据丢失
2.软件
2.1软件,一系列按照特定顺序组织的计算机数据和指令的集合。
有系统软件和应用软件之分
程序=数据结构+算法
2.2人机交互方式
图形化界面(GUI)
命令行方式(CLI)
2.3常用DOS命令
DiskOperating System 磁盘操作系统,单用户,单任务
常用指令:
操作 | 说明 |
---|---|
d: | 盘符切换。切换到d盘 |
dir | 列出当前目录下的文件以及文件夹 |
md 文件目录名 | 创建目录 |
cd 目录名 | 进入指定单极目录 |
cd 目录1/目录2/目录3/.. | 进入指定多级目录 如:cd cmd/class1/team1 |
cd.. | 退回上一级目录 |
cd/或cd\ | 退回盘符目录 |
rd目录名 | 删除指定目录(如文件目录内有数据,删除失败 |
del文件名 | 删除指定文件 |
3.计算机编程语言
第一代:机器语言
1946年2月14日,世界上第一台计算机ENAC诞生,使用最原始的穿孔卡片
第二代:汇编语言
面向机器,不能通用,程序不易移植,较难调试
第三代:高级语言
面向过程:C,Fortran,Pascal
面向对象:Java,C#,python
c++面向对象/面向过程
4.Java语言概述
4.1概述
是SUN公司 1995年推出,面向互联网的编程语言
4.2Java发展史
1991年,SUN公司想设计一种语言,应用在电话,闹钟,
烤面包机等家用电器的控制和通信。
Gosling(高斯林Java之父)团队率先创造了这个语言,命名Oak。
后因智能化家电市场需求不大,放弃该项目。
随着20世纪90年代互联网发展,SUN公司又改进了Oak,于1995年5月发布Java。
发展阶段:1995发布,1996年Java1.0,
1998将Java拆分为javaee,javase,javame
2004版本号从1.4直接更新至5.0 ,2009年Oracle收购SUN,交易价格74亿美元,
2014年Java8.0(java1.8)
4.3Java技术体系平台
Java SE(Java Standard Edition)标准版
Java EE(Java Enterprise Edition)企业版
JavaME(Java Micro Edition)小型版
5.Java开发环境搭建
5.1 JDK、JRE、JVM
JDK:Java development kit,Java开发工具包,包含JRE和开发人员使用的工具
JRE:Java Runtime Environment ,Java运行环境,核心类库
JDK=JRE+开发工具集
JRE=JVM+Java SE标准类库
5.2 JDK下载
网址:www.oracle.com
点击Developers -》选择Java -》JDK1.8
点击安装包 -> 下一步 -> 改路径 -> 安装
配置path环境变量 Java_HOME+path
查看版本:cmd中 java - version
6.HelloWorld编写
Java程序开发三步骤:编写,编译,运行
将Java代码编写到扩展名为.java的源文件中
通过javac.exe命令对该java文件进行编译,生产一个或多个字节码文件
通过Java.exe命令对生产的class(字节码文件)文件进行运行
class HelloChina{
public static void main(String[] args){
System.out.println("Hello World!");
}
}
注:编译cmd中 javac HelloWorld.java后生产 .class 文件
编译不通过,查看编译文件名,文件路径是否有问题或是代码问题
运行java HelloChina(java 类名)
运行不通过查看解释运行的类名,字节码文件路径是否正确,
或是代码问题导致运 行错误
class关键字,后跟类名
args:全称arguements
输出 System.out.println("输出语句"); 字符串用双引号
System.out.println输出语句换行,System.out.print输出不换行
一个源文件中可以声明多个类,但最多只能有一个使用public进行声明
且用public修饰的类名与源文件名一样
7.注释(comment)
注释类型:
1.单行注释
//注释文字
2.多行注释
/*
注释文字1
注释文字2
注释文字3
*/
单行注释和多行注释不会存在于字节码文件中
多行注释不能嵌套使用
3.文档注释(java特有)
/**
@author 指定java程序的作者
注释文字
*/
8.Java API文档
API(Application Programming Interface应用程序编程接口),Java提供的基本编程接口。
Java API文档
9.Java核心机制:JVM
9.1Java语言的优缺点
优点:
跨平台性,Java编写的应用程序可以在不同系统平台上运行
面向对象性,支持封装,继承,多态等特性,高内聚,低耦合
健壮性,去掉指针,内存的申请和释放等,
提供一个相对安全的内存管理和访问机制
安全性高,提供一个安全机制以防恶意代码攻击
简单性
高性能
缺点:
语法复杂
一般适用大型网站开发,整个架构比较重
并非适用所有领域
9.2 JVM功能
Java虚拟机
(1)实现跨平台
(2)自动内存管理(内存分配,内存回收)
Java运行过程中,涉及到运算的数据分配、存储等由JVM完成
减少因为没有释放空间而导致的内存泄露
注:Java程序仍然会出现内存溢出和内存泄漏问题
10.企业真题
1.一个“.java”源文件中是否可以包括多个类?有什么限制
是,一个源文件中可以声明多个类,但只有一个类使用public进行声明
且要求声明为public的类的类名与源文件名相同
2.Java的优势
跨平台性,安全性高,简单性,健壮性,高性能,面向对象
社区比较繁荣,有大量开源代码
3.Java中是否存在内存溢出、内存泄漏?如何解决?举例说明
4.如何解释Java是半编译半解释型语言?