java学习day01
基础知识
1.计算机组成
计算机组成包括硬件和软件两大部分。
- 硬件:硬件是指完成输入、存储、处理、输出功能的具体设备
1>输入设备:键盘、鼠标、摄像头、扫描仪
2>输出设备:显示器、打印机、音响
3>CPU(Central Processing Unit)中央处理单元:主要厂商有Intel、AMD、高通
4>存储器:主要包括内存、硬盘、优盘 5>其他设备:主板、机箱等- 软件:是指计算机系统中的程序及其文档。
软件有两大类 :系统软件和应用软件
系统软件:控制和支持计算机系统,例如:DOS、Windows7、Windows10、Mac、Linux、Android、IOS
应用软件:通常指一些应用软件,例如:Office、PhotoShop、WinRAR等
cpu
CPU:是一台计算机的运算核心(Core)和控制核心( Control Unit)。它的功能主要是解释计算机指令以及处理 计算机软件中的数据。
主要性能指标:
1.主频:CPU内核工作的时钟频率,也就是CPU工作频率,单位是兆赫(MHz)或千兆赫(GHz)主频越高表示CPU处 理数据的速度就越快。
2.内核:2核 4核 8核 例如:Intel 酷睿双核 i5 2.4G、i7 2.6G
存储器
存储器:用来存储数据和指令等的记忆部件。
计算机对存储器的要求是:一要存取速度快,二要存储容量大。
计算机中的存储器按用途存储器可分为主存储器(内存)和辅助存储器(外存)
外存:通常是磁性介质或光盘等,能长期保存信息。
内存:指主板上的存储部件,用来存放当前正在执行的数据和程序,但仅用于暂时存放程序和数据,关闭电源或 断电,数据会丢失。
存储器的计量单位包括位和字节
8bit —— 1 Byte
1024B —— 1 KB
1024KB —— 1 MB
1024MB —— 1 GB
1024GB —— 1 TB
1024TB —— 1 PB
1.2 DOS命令和快捷键
进入命令提示符: windows键+R ---》打开运行窗口--->输入cmd
cd命令:改变当前目录
change directory 改变目录
cd [盘符:][路径名][子目录名]
cd .. 返回上一级目录
cd \或cd / 返回根目录,推荐使用cd \
注意:如果需要访问非当前根目录下的目录文件,应该先输入该盘符,敲回车,然后再用cd命令
如:
d: 切换盘符d盘
cd programs 进入programs目录
md命令:创建目录
make directory
md 盘符:<文件夹名>
md myFile 在当前目录下创建myFile文件夹
md myPhoto\aaa\bbb 在当前目录下创建myPhoto\aaa\bbb多级目录
注意:md命令还可以创建以.开头的文件夹。
dir命令:列出当前目录下的文件以及文件夹
dir [盘符:][目录路径] [/p] [/s] [/w] [/o]
/p 分页显示下一页内容,按任意键查看下一屏
/s 显示所有目录及其子目录下所有文件
/w 宽屏显示
/o 分类顺序显示
copy命令:复制一个或一组文件到指定磁盘或目录中
copy <源文件路径> [目标路径]
copy a.txt d:\myFile 复制a.txt文件到d:\myFile文件夹中
copy myFile myPhoto 只复制myFile文件夹下的所有文件到myPhoto中,不包括子文件夹中的文件
如果要复制所有子文件夹下文件可使用:
xcopy myFile myPhoto /s 不能复制空目录
xcopy myFile myPhoto /e 复制空目录
rd命令:删除空目录
remove directory
rd [盘符:][路径名]<子目录名>
只能删除空目录,不能删除当前目录
rd myFile 删除myFile目录
rd myFile\aaa 只能删除aaa目录,不能删除myFile目录
del命令:删除文件
删除目录中的一个或一组文件,不能删除目录
del info.txt 删除info.txt文件
del myFile* 删除myFile目录下所有的文件
cls命令:清空屏幕
exit命令:退出dos命令行
mspaint:打开画图板
notepad:打开记事本
java
- Java是由Sun Microsystems公司于1995年5月推出的Java面向对象程序设计语言。
- Java之父:詹姆斯·高斯林
计算机程序
为了让计算机执行某些操作或解决某个问题而编写的一系列有序指令的集合
编写程序的工具就是计算机语言,Java就是多种语言中的一种
软件
软件是计算机程序、程序所用的数据以及有关文档资料的集合。
Java三个体系
- Java SE(Java Platform Standard Edition)。Java SE 以前称为 J2SE。它允许开发和部署在桌 面、服务器、嵌入式环境和实时环境中使用的 Java 应用程序。
- Java EE(Java Platform Enterprise Edition)。这个版本以前称为 J2EE。开发企业级的应用
- Java ME(Java Platform Micro Edition)。这个版本以前称为 J2ME。Java ME 为在移动设备和嵌入 式设备(比如手机、PDA、电视机顶盒和打印机)上运行的应用程序提供一个健壮且灵活的环境.
Java发展历史
Java是Sun(Stanford University Network)于1995年推出的一种高级编程语言,1996年1月发布JDK1.0
1998年 JDK1.2,更名为Java2 包括三个版本 J2ME J2SE J2EE
2000年 JDK1.3,JDK1.4 2004年 JDK1.5,为了表示该版本的重要性,J2SE 1.5更名为Java SE 5.0,内部版本1.5
2005年 JDK6.0,J2EE更名为JavaEE,J2SE更名为JavaSE,J2ME更名为JavaME,内部版本1.6
2009年 Oracle(甲骨文)74亿美元收购Sun。取得Java的版权。
2011年 JDK7.0,内部版本1.7
2014年3月19日,JDK8.0 内部版本1.8 2017年9月22日,JDK9.0发布
2018年3月21日,JDK10.0发布
2018年9月26日,JDK11.0发布
2019年3月20日,JDK12.0发布
Java应用场景
1.开发桌面应用程序:银行软件、商场结算软件
2.开发面向Internet的web应用程序: 电子商务、医疗、教育等各个行业网站
3.开发Android手机应用程序
4.大数据、人工智能开发的基础
Java特性
- 一种面向对象的编程语言
- 一种与平台无关的语言。(它提供了在不同平台下的解释运行环境)
- 一种健壮的语言,吸收了C/C++语言的优点。
- 具有较高的安全性。(自动回收垃圾,强制类型检查,取消指针)
- 开源
Java运行核心机制
高级编程语言类型
编译型:C 、C++、Java,会生成二进制文件比如:.exe文件、字节码文件
解释型:JavaScript、basic 不会生成二进制文件
而Java 语言是两种类型的结合;先编译,再解释执行
Java的两个核心机制
- Java虚拟机(Java Virtual Machine) JVM
1 JVM可以理解成一个可运行Java字节码的虚拟计算机系统。
它有一个解释器组件,可以实现Java字节码和计算机操作系统之间的通信
对于不同的运行平台,有不同 的JVM。
2 JVM屏蔽了底层运行平台的差别,实现了“一次编译,随处运行”。
所以Java语言是跨平台的。
- 自动垃圾回收(Garbage Collection)
Garbage Collection垃圾回收:将不再使用的内存空间应当进行回收。
1 在C/C++等语言中,由程序员负责回收无用内存,而Java语言消除了程序员回收无用内存空间的责任:
2 JVM提供了一种系统线程跟踪存储空间的分配情况。并在JVM的空闲时,检查并释放那些可以被释放的存储空间。
垃圾回收器在Java程序运行过程中自动启用,程序员无法精确控制和干预,即使程序员通过代码告诉垃圾回收 器执行,不会立即回收内存。
JDK安装和环境配置
1.安装JDK
下载地址:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
JDK安装步骤详情
JDK(Java Development Kits)-- Java开发工具集
主要包括:
- JRE(Java RunTime Environment)Java运行时环境
- Java编译器(javac.exe)
- Java运行时解释器(java.exe)
- Java文档化工具(javadoc.exe)
- 其它工具及资源
JDK、JRE、JVM之间的关系
1.JDK是开发人员需要安装的开发工具包,包括完整的JRE和开发工具、文档等,JRE是Java程序的运行环境,包含 JVM和常用的类库,JVM是Java程序运行必须的组件,负责程序的执行。
2.简单理解:JDK包含JRE、JRE包含JVM
第一个HelloWorld
Java开发步骤
第一步编写源程序
// HelloWorld类名和文件名相同 public class HelloWorld { // 公开的 static 静态的 void 没有返回值 String[] args 参数 public static void main(String[] args) //向外输出 打印 System.out.println("Hello World!"); } } //解释说明: //1 public 关键字 公开的 //2 class 关键字 表示定义一个类 //3 HelloWorld 类名 和文件名一致 //4 static 静态的,先记住意思,后面详细讲 //5 void 表示无返回值,先记住意思,后面讲 //6 main 主方法,程序入口 //7 String[] 字符串数组类型 //8 args 方法参数 //9 System.out.println("Hello World!");输出Hello World
源文件中的类
- 如果类不是public修饰的 , 类名可以和源文件的名字不同,但是如果 类名是public修饰的,那源文件的名 字必须和类名相同。
- 一个源文件中可以有多个类。
- 一个源文件中至多只有一个用public修饰的类。