Java学习之路(一):日常第一课,认识JAVA
Java的介绍
语言的起源
Java是SUN(Stanford University Network 斯坦福大学网络公司) 1995年推出的一门高级编程语言。
Java名称的来源:
Java最初是被命名为Oak的,针对的目标是家用电器等小型系统的编程语言。
后来SUN公司着眼于网络应用的开发。就改名了,Java的开发者嘞,喜欢咖啡。而Java的本意是指:印度尼西亚爪哇岛的英文名称,其因为盛产咖啡闻名。
一个Java的发展历史:
- 1995年5月23日,JAVA语言诞生
- 1996年,1997年分别退出了JDK1.0,JDK1.1版本
- 1999年,Java被分为了J2SE,J2EE,J2ME
- 2000年,JDK1.4发布了
- 2004年9月30日18:00,J2SE1.5发布了,这是Java语言的发展史上的一个里程碑(为了表示该版本的重要性,J2SE1.5更名为Java SE 5.0)
- 2005年,Java版本正式更名为JAVAEE,JAVASE,JAVAME
- 2006年12月,SUN公司发布了JRE6.0
- 2009年4月20日,Oracle收购了SUN,获得了Java的版权
- 2010年9月,JDK7.0发布,增加了简单的闭包功能
- 2011年7月,甲骨文公司发布Java7的正式版本
- 2014年3月,JavaSE8发布了
Java语言的重要特性:跨平台
跨平台:
什么是跨平台嘞?跨平台的概念是软件开发中的一个重要的概念,即不依赖于操作系统,也不信赖硬件的环境。一个操作系统下开发的应用,放到了另一个操作系统下依然可以正常的运行。
Java的跨平台:
一句话描述Java的跨平台:"write once run anywhere"
Java的跨平台是相对于其他编程语言而言的,通过Java语言编写的应用程序在不同的系统平台上都可以运行。一般的高级语言如果要在不同的平台上运行,至少需要编译成不同的目标代码。在windows编译的c语言程序,在linux下是不能运行的。当然在linux下编译的c语言程序在windows下也是不能运行的。而Java语言在不同平台上运行时不需要重新编译。
Java跨平台的原理:Java的跨平台是通过Java虚拟机(JVM)来实现的。
Java虚拟机(JVM):
Java语言的一个非常重要的特点就是与平台的无关性。而使用Java虚拟机是实现这一特点的关键。一般的高级语言如果要在不同的平台上运行,至少需要编译成不同的目标代码。而引入Java语言虚拟机后,Java语言在不同平台上运行时不需要重新编译。Java语言使用模式Java虚拟机屏蔽了与具体平台相关的信息,使得Java语言编译程序只需生成在Java虚拟机上运行的目标代码(字节码),就可以在多种平台上不加修改地运行。Java虚拟机在执行字节码时,把字节码解释成具体平台上的机器指令执行。
Java的三大平台:
JavaSE:
JavaSE(Java Platform,Standard Edition)。JaveSE之前被称为J2SE。它允许开发和部署在桌面,服务器,嵌入式环境和实时环境中使用的Java应用程序。JavaSE包含了支持JavaWeb服务开发的类,并且为Java Platform,Enterprise Edition(JavaEE)提供基础。
JavaEE:
JavaEE(Java Platform,Enterprise Edition)。这个版本以前称作J2EE。企业版本帮助开发和部署可移植、健壮、可伸缩且安全的服务器端Java程序。JavaEE是在JavaSE的基础上构建的,它提供Web服务、组件模型、管理和通信API,可以用来实现企业级面向服务体系结构(service-oriented architecture,SOA)和Web2.0应用程序。
JavaME:
JavaME(Java Platform,Micro Edition)。这个版本以前称为J2ME,也叫K-JAVA。JavaME为在移动设备和嵌入式设备(比如手机、PDA、电视机顶盒和打印机)上运行的应用程序提供一个健壮的而且灵活的环境。JavaME包括灵活的用户界面、健壮的安全模式、许多内置的网络协议以及对可以动态下载的联网和离线应用程序的丰富支持。基于JavaME规范的应用程序只需要去编写一次,就可以用于许多设备,而且可以利用每个设备的本机功能。
Java环境
JDK简介:
JDK(Java Development Kit)是Sun Microsystems针对Java开发员的产品。自从Java推出以来,JDK已经成为使用最广泛的Java SDK。JDK 是整个Java的核心,包括了Java运行环境、Java工具和Java基础类库。JDK是学好Java的第一步。从SUN的JDK5.0开始,提供了泛型等非常实用的功能,其版本也不断更新,运行效率得到了非常大的提高。
JDK的文件目录的介绍:
bin:存放的是开发java程序常用的工具。
demo:源代码的示例程序。
include:包含c的语言程序,支持c的本地接口和java虚拟机调试程序的本地接口。
sample: 主要包含一些典型的小例子JNLP示例
jre: 主要包含java程序运行需要的类
bin:用于运行时的可执行文件
lib:类库
安装JDK需要注意的事项:
1. 安装路径中不要包含中文。
2. 安装路径中不要包含空格。
JRE简介:
JRE Java Runtime Environment Java运行环境。包括Java虚拟机(JVM Java Virtual Machine)和Java程序所需的核心类库等,如果想要运行一个开发好的Java程序,计算机中只需要安装JRE即可。
配置环境变量:
由于并不困难,这里就不在赘述了,直接百度也可以搜索到。
配置环境变量一些特别的内容:
JAVA_HOME环境的配置:
1.创建一个JAVA_HOME的变量
2.JAVA_HOME的值为JDK的安装目录
3.配置path路径的时候即可%JAVA_HOME%/bin
这样的话,以后再想更改JDK的目录时候,只需要更换JAVA_HOME的目录即可
补充:在命令行下如何临时的去更改环境变量呢(一般用于测试):
- set=====查看所有的环境变量信息
- set 变量名=====查看具体一个环境变量的值
- set 变量名= ======清空一个环境变量的值
- set 变量名=具体值=====给指定变量定义具体值
如果我想在path中添加一个呢?注意是添加一个:
set path = 新的值;%path%
注意:以上的配置方法均为临时配置的方法
JAVA程序的入门
1.helloworld程序入门
class Demo1
{
public static void main(String[] args)
{
System.out.println("Helloworld");
}
}
一些需要注意的小细节
1.缺少了main方法:
2.源文件中的大小写要注意。
3.Javac编译生成的.class文件的名称取决于类名,跟.java的文件名没有任何关系
补充:
classpath环境变量
classpath的作用:指定类搜索路径,保存class文件的存储路径。(要使用编译好的类就要找到他们,jvm就是通过classpath来寻找他们的)
设置目录时的小坑:
set classpath=.; 与 set classpath=设置路径;. 有什么区别?
"."在前面的时候,java虚拟机会先从当前路径去寻找class文件,然后再到指定的路径去寻找。
"."在后面的时候,java会先寻找指定路劲。
在设置classpath的时候一定要加上";"号,否则就只会在当前目录先寻找了
classpath环境变量 和 PATH的 区别
PATH:用来指定 java虚拟机(JVM) 所在目录告诉java虚拟机,因为我们要常用到java给我们提供一些工具对源代码进行一些处理或者是提取源代码的信息。
CLASSPATH:用来指定我们自己所写的或要用到的类文件(.class文件)所在的目录
Java学习之路(一):日常第一课,认识JAVA的更多相关文章
- Java 学习之路(1)第一个Java程序
Hello World程序 在编程语言的世界里,第一个编程语言估计就是输出Hello World了吧. /** * 编写第一个Java程序,输出Hello World! * @author LJS * ...
- spark学习之路1--用IDEA编写第一个基于java的程序打包,放standalone集群,client和cluster模式上运行
1,首先确保hadoop和spark已经运行.(如果是基于yarn,hdfs的需要启动hadoop,否则hadoop不需要启动). 2.打开idea,创建maven工程.编辑pom.xml文件.增加d ...
- Java学习之路:不走弯路,就是捷径
1.如何学习程序设计? JAVA是一种平台,也是一种程序设计语言,如何学好程序设计不仅仅适用于JAVA,对C++等其他程序设计语言也一样管用.有编程高手认为,JAVA也好C也好没什么分别,拿来就用.为 ...
- 【分享】Java学习之路:不走弯路,就是捷径
1.如何学习程序设计? JAVA是一种平台,也是一种程序设计语言,如何学好程序设计不仅仅适用于JAVA,对C++等其他程序设计语言也一样管用.有编程高手认为,JAVA也好C也好没什么分别,拿来就用.为 ...
- 新篇章之我的java学习之路下
昨天写下了人生的第一篇博客,今天接着写我的java学习之路有关开发及框架的学习过程. 想要学好java语言,只学习一些java的基本语法对实际开发中的用处还是不大的,所以我们还要掌握一些有关javaW ...
- java学习之路之javaSE基础2
java学习之路之javaSE基础2 所有的代码都是引用他人写的. 1.逻辑运算符 //&,|,^,! //int x = 10; //5 < x < 15 //x > 5 ...
- java学习之路之javaSE基础1
<h2>java学习之路之javaSE基础1</h2> <div> ###01.01_计算机基础知识(计算机概述)(了解)* A:什么是计算机?计算机在生活中的应用 ...
- Java学习之路(转)
Java学习之路(书籍推荐) 一.基础类 1.<Thinking in java>(阅读2遍),入门第一位是建立正确的概念 2.<Core Java>这本书更贴近实践,更多 ...
- JAVA学习之路与大家分享
这是我四年以前总结的JAVA学习之路,希望对初学者或想从事JAVA开发的人有帮助. 本人是软件工程专业出身,先后学过C.C++.JAVA.VB.delphi等等开发语言以及网络相关管理技术.哎,好久不 ...
- Python学习之路——pycharm的第一个项目
Python学习之路——pycharm的第一个项目 简介: 上文中已经介绍如何安装Pycharm已经环境变量的配置.现在软件已经安装成功,现在就开始动手做第一个Python项目.第一个“Hello W ...
随机推荐
- NIOS II SOPC系统自定义IP常见知识点总结
封装IP1.将写好的Verilog代码添加在Quartus工程中,IP目录下,(如果没有,自己建一个)2.打开Qsys工具,选择New Component3.name和Display name输入合理 ...
- Struts2的多方法动态Action
原创 一个简单的Action里面的核心方法只有一个execute(); 定义多个核心方法的Action,有如下3种方式: 为Action配置method属性 动态方法调用 使用通配符映射方式 动态方法 ...
- sql查询语句的拼接小技巧(高手勿喷)
1. 基本的查询语句后面加上 WHERE 1=1,便于增加查询条件. ASkStr := 'select * from Twork where 1=1 '; if length(cxTEworkid. ...
- Android-ContentProvider流程
Android-ContentProvider原理及流程 Android为什么设计出一个ContentProvider ? 答:ContentProvider的出现主要是暴露数据出去,暴露什么数据呢 ...
- 模仿w3c school的示例导航栏
近日学习HTML,恰巧学习过程中看见w3cschool的示例导航栏看上去很不错,适合新手练习,于是模仿着做了一个. 示例导航栏如下图所示 导航栏自然使用li标签来做,a标签控制背景颜色和鼠标放入的特效 ...
- ftp服务器PDF文件在线查看
曾做过电厂的项目,有一些功能需要和甲方的厂家对接,其中就有需要实现甲方ftp服务器上的PDF.JPG等文件的查看功能.就PDF文件为例,这里使用的是pdf插件,需要将参数通过链接发给ftp,获取到PD ...
- springboot pom 详解
Starter POMs是可以包含到应用中的一个方便的依赖关系描述符集合.可以获取所有spring及相关技术的一站式服务,不需要翻阅示例代码,拷贝粘贴大量的依赖描述符. Starter名字的含义: 所 ...
- 使用 dlv 调试go 程序
目录 使用 dlv 调试smartraiden 一 正常启动 smartraiden 二 dlv 调试 三 dlv attach 使用 dlv 调试smartraiden by 白振轩 使用 dlv ...
- 【OCP-12c】CUUG最新考试原题整理及答案(071-11)
11.(5-8) choose the best answer: Examine the structure of the BOOKS_TRANSACTIONS table. You want to ...
- “全栈2019”Java第七十四章:内部类与静态内部类相互嵌套
难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java第 ...