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简介的更多相关文章

  1. 第一个Mybatis程序示例 Mybatis简介(一)

    在JDBC小结中(可以参阅本人JDBC系列文章),介绍到了ORM,其中Mybatis就是一个不错的ORM框架 MyBatis由iBatis演化而来 iBATIS一词来源于“internet”和“aba ...

  2. 第一个java程序以及java的运行机制

    课堂要点: 编写第一个java程序以及理解java的运行机制. 1.基本命令介绍: javac命令: 编译java文件得到.class字节码文件 -encoding 参数:指定编译的编码 java命令 ...

  3. java 程序运行过程 简介

    这里的Java程序运行过程,是指我们编译好代码之后,在命令行开始执行java xxx命令,到java程序开始执行起来的这一过程,我们称其为运行时. 第一步,操作系统解析我们输入的java xxx命令, ...

  4. 我的第7个java程序--把java web项目改为java project项目--mybatis

    连接数据库需要 程序,连接字符串,查询语句 主程序->读取连接字符串->读取查询语句->把查询到的值赋值给映射对象->打印对象属性 java project的好处,不用做那么多 ...

  5. 02-第一个Java程序

    学习java的第一个程序 记录自己的学习 记录自己的坚持 记录自己的梦想 public class Hello{ public static void main(String[] args) { Sy ...

  6. 跟着学!教你开发第一个Java程序

    今天我们的目标是开发人生中的第一个Java程序,虽然可能会很简单,但是这小小的一步却是跨入IT行业的一大步!下面我们来一起来仔细的了解开发的流程. 准备工作 1,作为一名准程序猿自备一台电脑那是必不可 ...

  7. 【Java】使用记事本运行第一个Java程序

    要编写java程序,java sdk必不可少,mac OS系统自带sdk,如果觉得版本太低,可以去官网下载最新的. 打开终端,新建一个HelloWorld.java文件: vim HelloWorld ...

  8. [刘阳Java]_第一个Java程序_第7讲

    1. 其实第一个Java程序是很简单,但是当自己编写第一个Java程序时候需要注意如下几个内容: 理解Java程序的运行环境 校验你的Java环境变量是否能够运行你所写的第一个Java程序 理解Jav ...

  9. 一劳永逸Java环境配置,以及编写我的第一个Java程序

    Java环境配置,以及编写我的第一个Java程序 配置步骤 1.下载jdk 2.安装步骤 3.配置环境 4.我的第一个Java程序 配置步骤 网上的教程有很多,方法也都不尽相同.今天我就分享一下我的配 ...

随机推荐

  1. java知识点2

    进阶篇 Java底层知识 字节码.class文件格式 CPU缓存,L1,L2,L3和伪共享 尾递归 位运算 用位运算实现加.减.乘.除.取余 设计模式 了解23种设计模式 会使用常用设计模式 单例.策 ...

  2. CF1100B Build a Contest

    题目地址:CF1100B Build a Contest 水题,比赛时没想就敲了个 \(O(n^2)\) 的暴力上去,结果过了Pretest,然后被Hack了 两个数组: \(c_i\) 表示 \(i ...

  3. 2018 Multi-University Training Contest 1 杭电多校第一场

    抱着可能杭电的多校1比牛客的多校1更恐怖的想法 看到三道签到题 幸福的都快哭出来了好吗 1001  Maximum Multiple(hdoj 6298) 链接:http://acm.hdu.edu. ...

  4. 【转】Python-面向对象进阶

    [转]Python-面向对象进阶 一.isinstance(obj, cls) and issubclass(sub, super) 1. isinstance(obj, cls),检查obj是否是类 ...

  5. 当linux中的所有指令突然不能使用的时候

    接到同事电话,线上linux系统所有命令执行不了(由于其误操作执行一些命令) 此时可以按以下步骤解决问题: 1.首先导入临时变量(重启虚拟机之后失效),使得所有命令行暂时可以用 直接在命令行执行以下命 ...

  6. CGI,FastCGI,PHP-CGI与PHP-FPM区别详解【转】

    CGI CGI全称是“公共网关接口”(Common Gateway Interface),HTTP服务器与你的或其它机器上的程序进行“交谈”的一种工具,其程序须运行在网络服务器上. CGI可以用任何一 ...

  7. python类的使用

    下面是一个员工类的创建及类对象的创建实例: #!/usr/bin/python # -*- coding: UTF-8 -*-class Employee: empCount = 0 def __in ...

  8. 题解-拉格朗日(bzoj3695变种)

    Problem 在无穷大的水平面上有一个平面直角坐标系,\(N-1\)条垂直于\(x\)轴的直线将空间分为了\(N\)个区域 你被要求把\((0,0)\)处的箱子匀速推到\((x,y)\) 箱子受水平 ...

  9. c++ 值转换

    1.double,float 四舍五入,保留小数位数. void MainWindow::on_pushButton_clicked() { double number=3.141592; ); qD ...

  10. Cassandra索引详解

    转自: https://www.cnblogs.com/bonelee/p/6278943.html 1.什么是二级索引? 我们前面已经介绍过Cassandra之中有各种Key,比如Primary K ...