1、第一天
所用文件的扩展名必须是.Java
进行编程和编译的时候,一开始作为初学者,先不要采用集成开发工具,需要用纯天然编程环境,进行代码编写
安装一个文本编程工具,editplus来进行Java编码进行运行,可以直接进行运行,不用破译。它仅仅是个文件编辑器,和Java没关系
进行软件安装的时候,如果安装路径是在C盘的话,如果软件是32位的话,自动安装金program files(x86),如果是64位的话,自动安装进program files。
进行editplus配置,初试配置中在文件保存时会生成.bak的备份文件,进行工具选项里面的首选项进行配置。
java语言虽然可以做到一次编译,便可以全部运行,但是是需要借助于JVM(Java虚拟机)来完成的,相当于针对不同的操作系统,要安装不同版本的JVM,进而来实现一处编译,各处运行
Java程序的运行:
1、写代码:编写.java的源文件
2、编译:使用javac命令对java源文件进行编译,如果符合运行规范,便会生成一个.class文件,即字节码文件,前面的文件名称之为类名
3、运行:使用java命令运行已经编译的Java程序,在都是命令窗口执行java A命令,这时JVM启动,通过类装载机ClassLoader从硬盘中找到A.class文件进行装载,最终解释为二进制文件,然后操作系统通过执行二进制指令来执行和硬件平台的交互。
2、第二天
常用的dos命令,于cmd控制窗台进行操作
1、dir指令进行文件夹下的目录查询
2、cd命令吗,切换路径,使用方法是cd+目录路径
3、del命令:删除文件和目录
4、ipconfig命令:查看IP地址等信息
5、ping命令:查看两台计算机是否可以正常通信
6、mkdir命令:创建目录 mkdir abc表示在当前目录下建立abc目录
7、cls:清屏
8、exit:退出DOS命令窗口
简单性:Java语言去除了指针操作,真正操作内存的是JVM(虚拟机),c或c++都可以操作内存,但要求技术精湛。
Java语言底层是c++,JVM使用c++语言写好的一个虚拟电脑,安装好JDK后,JVM便安装好了。
Java堪称是完全面向对象的
面向对象更容易容易让人理解,人类通常是以对象的方式来认知世界的采用面向对象的方式,可以是复杂问题简单化
健壮性:自动垃圾回收机制(GC机制)
Java语言是健壮的,相对于c语言来说,Java不容易导致内存的泄露,C++或者C使用不当容易造成内存泄漏。
Java不需要去释放内存,Java吃完饭有自动洗碗机,c吃完饭要自己洗碗
JVM负责调动GC机制,是垃圾信息达到一定程度才能清除,所以内存没办法及时清理。
Java完美支持多线程并发,一个线程便是指一个处理流程
可移植性/跨平台:只编写一次,可以做到各处运行
OS(操作系统)不同的系统版本是依托于不同版本的JVM来套在操作系统上,而是在JVM上及及进行运行Java程序
额外:内存是什么?
对于计算机来说,最主要的部件:
CPU:中央处理器,负责发送并执行指令,负责计算
内存:程序运行过程中的临时数据存储空间,断电或者关机后数据可能会消失,cpu负责计算,数据则负责存储
主板:相当于人类的躯干,是载体,CPU、内存条等主要部件都放在主板上,主板上有很多线,将部件链接起来。
硬盘:持久化设备,硬盘上的数据不会因为断电或者关机从而丢失
Java的加载与执行
编写的Java代码(普通文本)是无法被JVM识别,要转换成可以识别的“字节码”来交付JVM来运行
普通文本是Java源代码,要编译生成源代码对应的字节码(.class文件)
编译和运行两个阶段可以在不同的操作系统上完成
源代码可以删除,不会影响字节码的运行,因为源代码不参与程序执行,但源代码可以进行修改,进而生成新的字节码
一个Java源文件是可以编译生成多个.class文件的,生成的字节码文件不是二进制文件,如果是二进制文件,便不需要JVM了,因为计算机可以直接执行二进制文件
编写完Java程序并进行保存之后要进行编译,需要用到JDK bin目录下的javac.exe,但该指令不可以直接在dos命令窗口进行直接使用,从而需要进行在bin目录下进行操作,用cd指令进行切换目录到这个,比较麻烦
相较于ipconfig命令则是直接可以操作,是因有环境变量path在起作用,path变量是可以包含一个路径,从而需要配置path变量来进行避免切换路径所带来的麻烦,从而在安装的JDK的时候都会去配置环境变量。
这样便可以不用切换路径来进行直接使用javac命令来进行编译
javac-version是用来查看编译器版本
原来安装的版本JDK8出现了问题,不太清楚是哪儿的问题,可能是在安装目录下进行改名了,导致路径上出现了问题,cmd窗口中查询不到相应的Java版本
从新进行安装了JDK13版本,虽然当前大多数用的还是8的 版本,课程上13中多了一些新的特性,比较有用,并且安装的时候更加快捷,并且JDK13会内置一个jre,不会像8一样会生成一个外部jre。
JDK8在安装时不仅内置了一个JRE,同时还生成一个独立的JRE(低版本是,会有两份JRE)也可能因为这个jre的原因8版本才不能用了
对于Java13来说,如果希望生成一个独立的jre,需要执行特殊的命令,在后期需要用到的话,就再说
JDK的目录下有javac.exe负责编译、java.exe负责运行
重点术语总结:
Java体系的技术被划分为三大块
JavaSE:标准版
JavaEE:企业版
JavaME:微型版
安装JDK之后:
JDK:Java开发工具箱
JRE:Java运行环境
JVM:Java虚拟机
第一个代码进行编写,严格照抄各种东西
文件名为HelloWorld.java 大小写都要严格一致