我的第一个Java程序和Java简介
public calss HelloWorld{
public static void main(String[] args){
System.out.println("Hello World!!");
}
}
创建文件HelloWorld.java(文件名需和类名一致,不然编译不通过,编译器报错)
javac Helloworld.java
java HelloWorld
Java是由Sun Microsystems公司于1995年推出的Java面向对象设计语言和Java平台的总称。由James Gosling和同事们共同研发,并1995年正式推出。
Java分为三个体系:
JavaSE Java平台标准版
JavaEE Java平台企业版
JavaME Java平台微型版
2005年6月,javaone大会召开,sun公司工卡Java se 6。此时,Java的各种版本已经更名以取消其中的数字2,j2ee更名为Java ee,j2se更名为java se,j2me更名为Java ee。
主要特性
Java语言是简单的;
Java语言的语法与C语言和C++语言很接近,是的大多数程序员很容易学习和使用。另一方面,Java丢弃了C++中很少使用的、很难理解的、令人迷惑的那些特性,如操作符重载,多继承,自动的强制类型的转换。特别地,Java语言不使用指针,而是引用,并提供了自动的废料收集,使得程序员不必为内存管理而担忧。
Java语言是面向对象的。
Java语言提供类,接口和继承等面向对象的特性,为了简单起见,只支持类之间的单继承,但支持接口之间的多继承,并支持类与接口之间的实现机制。Java语言全面支持动态绑定,而C++语言只对虚函数使用动态绑定。总之,Java语言是一个纯面向对象程序设计语言。
Java语言是分布式的
Java语言支持Internet应用的开发,在基本的Java应用变成接口中有一个网络应用变成接口,提供了用于网络应用变成的类库,包括URL,URLConnection,socket,Serversocket等,Java的RMI远程方法激活机制也是开发分布式应用的重要手段。
Java语言是健壮的
Java强类型机制,异常处理,垃圾的自动收集等是Java程序健壮性的重要保障,对之臣的丢弃是Java的明智选择,Java的安全检查机制使得Java更具健壮性。
Java语言是安全的;
Java通常被用在网络还ing中,为此,Java提供了一个安全机制以防止恶意代码的攻击,除了Java语言具有许多安全特性以外,Java对通过网络下载的类具有一个安全防范机制,如分配不同的名字空间以防止代替本地的同名类,字节代码检查,并提供安全管理机制,让Java应用设置安全哨兵。
Java语言是体系结构中立的。
Java程序,后缀为Java的文件,在Java平台上被编译为体系结构中立的字节码格式,后缀为class的文件,然后可以在实现这个Java平台上的任何系统中运行,这种途径适合于异构网络环境和软件的分发。
Java语言是可移植的
这种可移植性源于体系结构中立性,另外,Java还严格规定了各个基本数据类型的长度。Java系统本身也具有很强的可移植性,Java编译器是用Java实现的,Java的运行环境是用Ansi C实现的。
Java语言是解释性的
如前所述,Java程序在Java平台上呗编译为字节码格式,然后可以在实现这个Java平台的任何系统中运行,在运行时,Java平台中的Java解释器对这些字节码进行解释执行,执行过程中需要类在连接阶段呗载入到环境中。
Java是高性能的
与那些解释型的高级脚本语言相比,Java的确是高性能的,事实上,Java的运行速度随着jit编译器技术的发展越来越接近于c++.
Java语言是多线程的。
在Java语言中,线程是一个特殊的对象,它必须由Thread类或其子孙类来创建,通常有两种方法来创建线程,其一,使用结构为thread来构造子将一个实现了runnable接口的对象包装成一个线程,其二,从thread类派生出子类并重写润方法,使用该子类创建的对象即为贤臣个,值得注意的是thread类已经实现了runnable接口,因此,任何一个线程均有它的run方法,而run方法中包含了线程所要运行的代码,线程的活动由一组方法来控制,Java语言支持多个线程同时执行,并提供多线程之间的同步机制。
Java语言是动态的
Java语言的设计目标之一是适应动态变化的环境,Java程序需要的类能够动态地呗载入到运行环境,也可以通过网络来载入所需要的类,这也有利于软件的升级,另外,Java中的类由一个运行时刻的表示,能进行运行时刻的类型检查。
发展历史
1995年5月23日,Java语言诞生
1996年1月,第一个jdk-jdk1.0诞生
1996年4月,约8.3万个网页应用了Java技术来制作
1997年2月18日,jdk1.1发布
1997年4月2,Javaone会议召开,参与者一万人,创当时全球会议规模之记录
- 1997年9月,JavaDeveloperConnection社区成员超过十万
- 1998年2月,JDK1.1被下载超过2,000,000次
- 1998年12月8日,JAVA2企业平台J2EE发布
- 1999年6月,SUN公司发布Java的三个版本:标准版(JavaSE,以前是J2SE)、企业版(JavaEE以前是J2EE)和微型版(JavaME,以前是J2ME)
- 2000年5月8日,JDK1.3发布
- 2000年5月29日,JDK1.4发布
- 2001年6月5日,NOKIA宣布,到2003年将出售1亿部支持Java的手机
- 2001年9月24日,J2EE1.3发布
- 2002年2月26日,J2SE1.4发布,自此Java的计算能力有了大幅提升
- 2004年9月30日18:00PM,J2SE1.5发布,成为Java语言发展史上的又一里程碑。为了表示该版本的重要性,J2SE1.5更名为Java SE 5.0
- 2005年6月,JavaOne大会召开,SUN公司公开Java SE 6。此时,Java的各种版本已经更名,以取消其中的数字"2":J2EE更名为Java EE,J2SE更名为Java SE,J2ME更名为Java ME
- 2006年12月,SUN公司发布JRE6.0
- 2009年04月20日,甲骨文74亿美元收购Sun。取得java的版权。
- 2010年11月,由于甲骨文对于Java社区的不友善,因此Apache扬言将退出JCP[4]。
- 2011年7月28日,甲骨文发布java7.0的正式版。
- 2014年3月18日,Oracle公司发表Java SE 8。
我的第一个Java程序和Java简介的更多相关文章
- 第一个Mybatis程序示例 Mybatis简介(一)
在JDBC小结中(可以参阅本人JDBC系列文章),介绍到了ORM,其中Mybatis就是一个不错的ORM框架 MyBatis由iBatis演化而来 iBATIS一词来源于“internet”和“aba ...
- 第一个java程序以及java的运行机制
课堂要点: 编写第一个java程序以及理解java的运行机制. 1.基本命令介绍: javac命令: 编译java文件得到.class字节码文件 -encoding 参数:指定编译的编码 java命令 ...
- java 程序运行过程 简介
这里的Java程序运行过程,是指我们编译好代码之后,在命令行开始执行java xxx命令,到java程序开始执行起来的这一过程,我们称其为运行时. 第一步,操作系统解析我们输入的java xxx命令, ...
- 我的第7个java程序--把java web项目改为java project项目--mybatis
连接数据库需要 程序,连接字符串,查询语句 主程序->读取连接字符串->读取查询语句->把查询到的值赋值给映射对象->打印对象属性 java project的好处,不用做那么多 ...
- 02-第一个Java程序
学习java的第一个程序 记录自己的学习 记录自己的坚持 记录自己的梦想 public class Hello{ public static void main(String[] args) { Sy ...
- 跟着学!教你开发第一个Java程序
今天我们的目标是开发人生中的第一个Java程序,虽然可能会很简单,但是这小小的一步却是跨入IT行业的一大步!下面我们来一起来仔细的了解开发的流程. 准备工作 1,作为一名准程序猿自备一台电脑那是必不可 ...
- 【Java】使用记事本运行第一个Java程序
要编写java程序,java sdk必不可少,mac OS系统自带sdk,如果觉得版本太低,可以去官网下载最新的. 打开终端,新建一个HelloWorld.java文件: vim HelloWorld ...
- [刘阳Java]_第一个Java程序_第7讲
1. 其实第一个Java程序是很简单,但是当自己编写第一个Java程序时候需要注意如下几个内容: 理解Java程序的运行环境 校验你的Java环境变量是否能够运行你所写的第一个Java程序 理解Jav ...
- 一劳永逸Java环境配置,以及编写我的第一个Java程序
Java环境配置,以及编写我的第一个Java程序 配置步骤 1.下载jdk 2.安装步骤 3.配置环境 4.我的第一个Java程序 配置步骤 网上的教程有很多,方法也都不尽相同.今天我就分享一下我的配 ...
随机推荐
- linux 终端命令行的快捷键列表
终端有很多快捷键,不太好记,常用的在这里 Ctrl+r 实现快速检索使用过的历史命令.Ctrl+r中r是retrieve中r.Ctrl+a:光标回到命令行首. (a:ahead)Ctrl+e:光标回到 ...
- 【转】python之配置日志的几种方式
[转]python之配置日志的几种方式 作为开发者,我们可以通过以下3种方式来配置logging: 1)使用Python代码显式的创建loggers, handlers和formatters并分别调用 ...
- R-FCN论文讲解(转载链接)
总结一下一下R-FCN的思想:由于分类网络具有位置的“不敏感性”和检测网络具有“位置的敏感性”这两者之间的矛盾, 而ResNet论文中为了解决这个问题,做出了一点让步,即将RoI Pooling层不再 ...
- 关于CaciiEZ端口流量阀值报警的设置
作者:邓聪聪 环境:CactiEZ v10.1 为了更高效的发现问题,在非工作期间,公司的网络可能会出现一些故障,为了及时解决问题,所以做了一个流量监控,并以邮件的方式发送流量异常的端口,以便及时了解 ...
- Cassandra docker 使用记录
环境介绍: docker 安装 cassandra 3.11.1 , 然后进入docker 的终端,输入 > cqlsh , 即可使用Cassandra了,详细介绍如下: 查看表空间descri ...
- 51nod--1459 迷宫游戏 (dijkstra)
1459 迷宫游戏 基准时间限制:1 秒 空间限制:131072 KB 分值: 0 难度:基础题 收藏 关注 你来到一个迷宫前.该迷宫由若干个房间组成,每个房间都有一个得分,第一次进入这个房间,你就可 ...
- 第一篇----mysql体系
mysql体系: 解释: 调用: 1.connectors:连接器 (远程调用mysql,Native很常用的mysql远程连接工具.其它是可以调用mysql支持的一些语言和方法) mysql结构 2 ...
- 37)django-单例模式
一:单例模式 单例模式,是一种常用的软件设计模式.在它的核心结构中只包含一个被称为单例的特殊类. 通过单例模式可以保证系统中一个类只有一个实例.即一个类只有一个对象实例. 常用例子:数据库连接串,只保 ...
- js之雪花飘落
有很多网站都有雪花或花瓣飘落的特效,看上去很好看.我来用js实现这个效果. 在写代码之前可以先引入bass.css对样式做下处理: 1.html部分 先建一个文件夹,在body中插入如下代码 < ...
- 洛谷P4630 [APIO2018]铁人两项 [广义圆方树]
传送门 又学会了一个新东西好开心呢~ 思路 显然,假如枚举了起始点\(x\)和终止点\(y\),中转点就必须在它们之间的简单路径上. 不知为何想到了圆方树,可以发现,如果把方点的权值记为双联通分量的大 ...