1. JAVA帝国的诞生!
背景
C语言
-
1972诞生
-
贴近硬件,运行极快,效率极高
-
操作系统,编译器,数据库,网络系统等
-
指针和内存管理
C++
-
1982年C++诞生
-
面向对象
-
兼容C
-
图形领域,游戏等
-
相较于C可能更难
Java初生
命名故事:一开始看到一颗橡树,想要命名为oak,但是发布之时已经被注册了。最后命名为java。
-
1995的网页简单而粗糙,缺乏互动性。
-
图形界面的程序(Applet)
比尔盖茨说:这是迄今为止设计最好的语言!
-
Java2标准版(J2SE): 去占领桌面
-
Java2移动版J2ME): 去占领手机
-
Java2企业版(J2EE): 去占领服务器
由此,大量巨头涌入。
Java发展
-
他们基于Java开发了巨多的平台,系统,工具
-
构建工具:Ant,Maven,Jekins
-
应用服务器:Tomcat,Jetty,Jboss,Websphere,weblogic
-
Web开发:Status,Spring,Hibernate,myBatis
-
开发工具:Eclipse,Netbean,intellij,idea,Jbuilder
-
......
-
-
2006:Hadoop(大数据领域)
-
2008:Android(手机端)
-
三高
-
高可用
-
高性能
-
高并发
-
2. Java特性和优势
精简的C
-
简单性
-
更加精简。
-
-
面向对象
-
可移植性
-
(跨平台移植)→write once,run anywhere!
-
-
高性能
-
摩尔定律
-
-
分布式
-
动态性
-
后面会学到反射机制
-
-
多线程
-
边玩lol边听网抑云
-
-
安全性
-
几乎不可能崩溃,有异常机制
-
-
健壮性
万物皆对象!
思考
Java为什么能够成功?
-
自身实力强,有较强的实力,努力。
-
机遇
-
需要做到的一点就是
-
当机遇来临时:有足够的实力去接住它。
Java三大版本
Write once,Run anywhere(跨平台的源)→Jvm(虚拟机)
相较于C很简单了。
-
JavaSE: 标准版(桌面程序,控制台开发...)
-
基础和核心(打牢基础!)
-
扫雷
-
连连看
-
-
-
JavaME: 嵌入式开发(手机,小家电...)
-
G
-
-
JavaEE: E企业级开发(web端,服务器开发...)
多思考,多练习。出错是好事!不必太较真!
3. JDK、JRE、JVM
-
JDK:Java Development Kit
-
JRE:Java Runtime Environment
-
JVM:Java Virtual Machine
4. Java开发环境搭建
-
JDK的卸载和安装
-
卸载
-
删除Java的安装目录
-
删除JAVA_HOME
-
删除path下关于java的目录
-
右键此电脑,点击属性
-
打开底部高级系统设置,点击环境变量中的系统变量
-
删除这里和Path里所有跟Java相关的项目
-
三个确定!
-
-
cmd→java -version→不是内部命令即为成功
-
-
安装
-
浏览器搜索JDK8,进入oracal官网往下拉,选择对应版本下载
选择JDK8的原因:
-
企业中用的最多的就是JDK8,JDK7
-
新的版本不稳定,而且更新比较快
-
网上也有说是开始收费了
-
-
同意协议,可能需要登陆账号
-
双击安装即可
-
记住自己的安装路径,配置环境变量需要
-
-
-
配置环境变量
-
右键此电脑,点击属性
-
打开底部高级系统设置,系统变量→新建JAVA_HOME
-
配置Path变量,新建%JAVA_HOME%\bin和%JAVA_HOME%\jre\bin
-
三个确定!
-
cmd→java -version→显示版本号即为成功。
测试JDK是否安装成功!
-
-
JDK目录介绍
-
bin目录:用于放一些可执行目录
-
includ目录:存放头文件
-
lib:Java的一些库
-
src.zip:里面是一些资源文件,Java类
-
5. HelloWorld
-
Hello world及简单语法规则
-
HelloWorld
-
新建一个文件夹code,存放代码
-
在里面新建文件Hello.java
-
编写代码
public class Hello{ public static void main(String[] args){ System.out.print("Hello,World"); } }
-
编译javac java文件,会生成一个.class文件
-
运行class文件,java class文件
-
-
可能会遇到的问题
-
Java是对大小写敏感的
-
尽量使用英文,包括路径也是
-
文件名和类名必须保证一致,并且首字母大写
-
符号也要用
-
-
-
Notepad++安装和使用
-
百度搜索Notepad++
-
一路下一步就ok了
-
简单设置一下就行了。
-
6. Java程序运行机制
JAVA既不是编译型也不是解释型,二者都有,比较接近解释型语言。先编后解
-
编译型语言→操作系统、C、C#
-
效率高
-
跨平台性差
-
-
解释型语言→网页、服务器、js
-
效率低
-
跨平台性好
-
IOS和Android系统运行流畅度就是这个道理。也可以用狂神举得例子理解→翻译官
伴随技术的发展(硬件的提升),编译型语言和解释型语言的界限变得越来越模糊了。
-
程序运行机制