Java入门
Java帝国的诞生(1995)
C语言(1972)特点
- 贴近硬件、运行极快、效率极高
- 操作系统,编译器,数据库
- 指针和内存管理
C++(1982)特点
- 面向对象
- 兼容C语言
- 图形领域、游戏等
- 可以说是C的改良版
反抗
要建立一个新的语言
-
语法有点像C
-
没有指针
-
没有内存管理
-
真正的课移植性,编写一次,到处运行
-
面向对象
-
类型安全
-
到质量的类库
-
……
C++ --诞生,也就是在C++的基础上删去了一些不好的,再更名为java
- JVM:Java虚拟机
- 三高问题:高可用、高性能、高并发
2006:Hadoop(大数据领域)
2008:Android(手机端)
在此,Java伟大的帝国得以诞生
Java的特性和优势
-
简单性
C++语法纯净版
-
面向对象
-
可移植性
跨平台性
Write once,run anywhere.
-
高性能
-
分布式程序
Url
-
动态性
反射机制
-
多线程
更好的交互行为
-
安全性
异常机制
-
强壮性
Java为什么能成功?
通过不断地学习提升自己,获得进步,加油加油 ~ 虽然一开始只是想通过学习Java解决以后就业问题,但还是希望自己在学习的过程中能慢慢爱上这门语言!
Java的三大版本
-
JavaSE(最核心、最基本的)
标准版(桌面程序、控制台开发……)
-
JavaME(几乎不用)
嵌入式开发(手机、小家电……)
-
JavaEE(应用最广泛的)
E企业级开发(web端、服务器开发……)
JDK, KRE, JVM
-
JDK : Java Development Kit (工具包)
JDK包含了JRE
-
JRE : Java Runtime Environment(运行环境)
-
JVM : Java Virtual Machine(虚拟机)
Java跨平台的核心
ipa: 程序接口
安装开发环境
JDK下载与安装
卸载JDK
-
删除 JDK 安装目录
我的电脑 → \to → 属性 → \to → 高级系统设置 → \to → 环境变量 → \to → 找到 JAVA_HOME的路径 → \to → 把java安装包全部删除
-
清理环境变量
在环境变量中选中JAVA_HOME删除
在path中也要删去和java_home相关的
点击确定
-
检查是否卸载成功
打开dos窗口
输入java-version
看是否得到如下结果
如果是,即卸载成功(可能吧= =)
安装JDK
-
找到下载地址,下载对应版本
搜索JDK8(11、12、13这些版本在企业中用的并不多,目前最多的还是JDK7和JDK8),点击进入下载页面。
(下载可能需要注册一个Oracle账号)
-
双击安装
我在安装时显示上次的未完全卸载,这时需要删除注册列表试试,具体操作如下
在运行中输入 Regedit 命令,打开注册列表编辑器,找到HKEY_LOCAL_MACHINE/SOFTWARE/JavaSoft ,将JavaSoft文件夹及其子目录全部删除。
嗯= =注册表删了还是不行
啊哈哈哈哈可以了!
要下载一个windows installer clean up再删一下就好啦
-
记住安装路径(hin重要,后面要用到)
我一般新建一个environment文件夹,这样子: D:\Environment\JAVA\JDK1.8
###配置环境变量
-
我的电脑 → \to → 右键 → \to → 属性
-
环境变量 → \to → 添加JAVA_HOME
-
配置path变量
-
检查JDK是否安装成功
- 打开cmd
- java -version
JDK目录介绍
bin目录
用于放一些可执行的程序,比如说咱们的javaC,叫做编译器,还有java的一些运行工具
include目录
用来引入C语言的一些头文件
jre目录
java运行环境
如果只跑java的话,有这个jre就够了
lib目录(library的缩写)
里面放了一些java的类库文件
src压缩包
里面时一些资源文件,有很多java类,包括com公司定义的一些核心源代码等等
建议再下载一个notepad++(比记事本要好用)
HelloWorld 及 简单语法规则
-
新建一个文件夹,存放代码
-
新建一个java文件
- 文件后缀名为.java
- hello.java
- 【注意点】系统可能没有显示后缀名,需要把后缀打开
-
编写代码
public class Hello { #类
public static void main(String[] args) { #main方法
System.out.println("Hello World");
}
}
-
编译javac java文件
(需要在这个目录下面)
会生成class文件
-
运行class文件
可能出现的问题
- 每个单词的大小写不能出现问题,Java是大小写敏感的
- 尽量使用英文
- 文件名 和 类名必须保证一致
- 符号使用了中文的
Java程序运行机制
编译型(compile)和解释型
-
Java既有编译型的特点,又有解释型的特点
-
二者本质上都是一个翻译的过程,唯一的区别就是时机的不同
-
通俗的解释:假设有一个中国人 和 一个美国人,中国人写了一本小说,比如说刘慈欣写了《三体》,那么这个美国人想看,却又不会中文,那要怎么办呢?
有两种办法
- 把整本书翻译成英文。但是如果这本书更新了,美国人像再看,就得把这本书重新翻译一遍再给他。
- 找一个第三方的翻译官,这个翻译官看一段给这个美国人翻译一段。但是如果这个美国人有一段忘记了,或者说想看前面的,那这个翻译官又得往回走,重新翻译一遍。
这两种方式都可以让这个美国人把这本书看完,各有好处。
那么回到编译型和解释型,咱们围绕这个故事来解释一下。编译型就类似于直接把这本中文书直接翻译成英文版,进行出售,也就是有一个用来翻译的程序,直接将我们的源代码转换成计算机可以执行的代码。在程序中,负责编译的程序就叫做编译器。对于解释型,就是我要执行什么,你就给我读取什么,实时编译的一个过程,但是加入我要回头做一个什么,又得重新编译。
- 编译型和解释性的利弊
- 编译型:执行速度更快,对操作系统的要求比较低,因此我们开发操作系统一般用编译型来做,比如C/C++……
- 解释性:网页、服务器的脚本,对于速度要求不高,可以使用解释性的语言(也就是边执行边解释),比如Java、JavaScript……
程序运行机制
随着技术和硬件的发展,编译型和解释型之间的界限变得越来越模糊了。电脑内存越来越大,解释型的效率如今也变得很高了,同时硬件也有提升,所以可以说现在几乎无关这些东西的痛痒了。
但需要知道,Java是先编译,之后在解释,所以它既有编译型的特征,也有解释型的特征。
使用IDEA开发
什么是IDE
IDEA介绍
进入官网下载IDEA,下载旗舰版(Ultimate),可以用学校账号免费下载。如果不想花钱也可以用社区版,功能基本可以得到保证。
根据自己电脑情况进行下载。
如果选择旗舰版,安装之后还需要用账号密码激活。
启动:
用IDEA编译和运行Hello World
1. 运行IDEA,选择New Project。
我的界面如下:
2. 设置项目名称和路径,点finish
得到如下界面
3. 鼠标右键src → \to → New → \to → Java class
输入class的名字,注意要和文件名一致
回车确定,进入代码界面
4. 代码
- 第二行输入main方法快捷键psvm,回车即可得到
-
第三行输入sout,回车,即可得到system.out,括号里加入要输出的话
-
运行
直接点击左边箭头即可
- 运行结果