初识Java,新手入门

Java简介

在这里插入图片描述

Java有什么用?

从Java的应用领域来分,Java语言的应用方向主要表现在以下几个方面:

  • 企业级应用:主要指复杂的大企业的软件系统、各种类型的网站。Java的安全机制以及它的跨平台的优势,使它在分布式系统领域开发中有广泛应用。应用领域包括金融、电信、交通、电子商务等。

  • Android平台应用:Android应用程序使用Java语言编写。Android开发水平的高低很大程度上取决于Java语言核心能力是否扎实。

  • 大数据平台开发:各类框架有Hadoop,spark,storm,flink等,就这类技术生态圈来讲,还有各种中间件如flume,kafka,sqoop等等 ,这些框架以及工具大多数是用Java编写而成,但提供诸如Java,scala,Python,R等各种语言API供编程。

  • 移动领域应用:主要表现在消费和嵌入式领域,是指在各种小型设备上的应用,包括手机、PDA、机顶盒、汽车通信设备等。

Java是什么?

  • Java的定义:Java是一门面向对象编程语言;Java语言作为静态面向对象编程语言的代表。
  • 是SUN(Stanford University Network,斯坦福大学网络公司 ) 1995年推出的一门高级编程语言。
  • 是一种面向Internet的编程语言。Java一开始富有吸引力是因为Java程序可以在Web浏览器中运行。这些Java程序被称为Java小程序(applet)。applet使用现代的图形用户界面与Web用户进行交互。 applet内嵌在HTML代码中。
  • 随着Java技术在web方面的不断成熟,已经成为Web应用程序的首选开发语言。
  • Java的特点
    • 简单性:

      设计得很像C++,但是为了使语言小和容易熟悉,设计者们把C++语言中许多较少使用的特征去掉了。更简单易学。

    • 面向对象

      Java是一个纯粹的面向对象的语言。Java程序是用类来组织的。具有三大特征:封装、继承、多态。方便程序员面向对象开发。是实现面向对象设计的最佳语言选择。

    • 分布式

      Java语言支持Internet应用的开发,在基本的Java应用编程接口中有一个网络应用编程接口(java net),它提供了用于网络应用编程的类库。

    • 健壮性

      Java是一个强类型语言,它允许扩展编译时检查潜在类型不匹配问题的功能。Java要求显式的方法声明,它不支持C风格的隐式声明。这些严格的要求保证编译程序能捕捉调用错误,这就导致更可靠的程序。
      可靠性方面最重要的增强之一是Java的存储模型。Java不支持指针,它消除重写存储和讹误数据的可能性。类似地,(垃圾自动收集)Java自动的“无用单元收集”预防存储漏泄和其它有关动态存储分配和解除分配的有害错误。Java解释程序也执行许多运行时的检查,诸如验证所有数组和串访问是否在界限之内。
      异常处理是Java中使得程序更稳健的另一个特征。异常是某种类似于错误的异常条件出现的信号。使用try/catch/finally语句,程序员可以找到出错的处理代码,这就简化了出错处理和恢复的任务。

    • 安全性

      Java的存储分配模型是它防御恶意代码的主要方法之一。Java没有指针,所以程序员不能得到隐蔽起来的内幕和伪造指针去指向存储器。更重要的是,Java编译程序不处理存储安排决策,所以程序员不能通过查看声明去猜测类的实际存储安排。编译的Java代码中的存储引用在运行时由Java解释程序决定实际存储地址。
      Java运行系统使用字节码验证过程来保证装载到网络上的代码不违背任何Java语言限制。这个安全机制部分包括类如何从网上装载。例如,装载的类是放在分开的名字空间而不是局部类,预防恶意的小应用程序用它自己的版本来代替标准Java类。
      另外。Java虚拟机采用的是“沙箱”运行模式,即把Java程序的代码和数据都限制在一定内存空间里执行,不允许程序访问该内存空间外的内存。

    • 平台独立与可移植性

      在JVM上运行,实现观点:write once, run anywhere!。Java程序(后缀为java的文件)在Java平台上被编译为体系结构中立的字节码格式(后缀为class的文件),然后可以在任何系统中实现这个Java平台的的解释器(JVM)中运行。(Java语言是解释型的)

    • 多线程

      Java是多线程语言,它提供支持多线程的执行 (也称为轻便过程),能处理不同任务,使具有线索的程序设计很容易。Java的lang包提供一个Thread类,它支持开始线索、运行线索、停止线索和检查线索状态的方法。

    • 动态性

      Java应用程序在运行过程中,可以动态的加载各 种类库,即使是更新类库也不必重新编译使用这一类库的应用程序。这一特点使之非常适合于网络环境下运行,同时也非常有利于软件的开发。

Java版本迭代

发行版本简述:

  • 1991年, SUN公司的Green项目组为开发嵌入式产品而推出的一门新语言Oak

  • 1994年,开发组意识到Oak非常适合于互联网,于是决定应用到互联网中

  • 1995年,互联网的兴起,Sun公司首先推出了可以嵌入网页并且可以随同网页在网络上传输的Applet(Applet是一种将小程序嵌入到网页中进行执行的技术),并将Oak更名为Java (在申请注册商标时,发现Oak已经被人使用了,再想了一系列名字之后,最终,使用了提议者在喝一杯Java咖啡时无意提到的Java词语),Java开始火起来。

  • 1996年,发布JDK 1.0,Java的第一个开发工具包,标志着Java成为一种独立的开发工具。

  • 1997年,发布JDK 1.1,Java One会议召开,创当时全球同类会议规模之最

  • 1998年,发布JDK 1.2,同年发布企业平台J2EE

  • 1999年,Java分成J2SE、J2EE和J2ME,JSP/Servlet技术诞生HotSpot虚拟机发布。

  • 2004年,发布里程碑式版本:JDK 1.5,为突出此版本的重要性,更名为JDK 5.0

  • 2005年,改名:J2SE -> JavaSE,J2EE -> JavaEE,J2ME -> JavaME

  • 2006年,Java开源

  • 2009年,Oracle公司收购SUN,交易价格74亿美元

  • 2011年,发布JDK 7.0

  • 2014年,发布JDK 8.0,是继JDK 5.0以来变化最大的版本

  • 2017年,发布JDK 9.0,最大限度实现模块化

  • 2018年3月,发布JDK 10.0,版本号发生变化,称为18.3

  • 2018年9月,发布JDK 11.0,版本号也称为18.9

版本迭代周期:

在 2017 年,甲骨文曾宣布,Java 语言将每隔 6 个月提供一次更新,并承诺不会跳票,Java 10 正是在此规则下的首个大版本。需要注意的是 Java 9 和 Java 10 都不是 LTS (Long Term Support)版本。和过去的 Java 大版本升级不同,这两个只有半年左右的开发和维护期。而未来的 Java 11,也就是 18.9 LTS,才是 Java 8 之后第一个 LTS 版本(得到 Oracle 等商业公司的长期支持服务)。

Java技术体系平台

  • Java SE(Java Standard Edition)标准版

    • 支持面向桌面级应用(如Windows下的应用程序)的Java平台,提供了完整的Java核心API,这些类库:字符串、集合、输入输出、网络通信和图形用户界面等。此版本以前称为J2SE
  • Java EE(Java Enterprise Edition)企业版

    • 主要目的是为简化企业级系统的开发、部署和管理。Java EE是以 Java SE为基础的,并提供了一套服务、API接口和 协议,能够开发企业级分布式系统、Web应用程序和业务组件等,其中的包括:JSP、Servlet、EJB、JNI和Java Mail等。以前称为J2EE
  • Java ME(Java Micro Edition)小型版

    • 支持Java程序运行在移动终端(手机、PDA)上的平台,对Java API有所精简,并加入了针对移动终端的支持,Java ME在早期的诺基亚塞班手机系统有很多应用,而现在的iOS和Android等智能手机中基本上没有它的用武之地。此版本以前称为J2ME
  • Java Card

    • 支持一些Java小程序(Applets)运行在小内存设备(如智能卡)上的平台

再谈谈Java

Java是目前应用最为广泛的软件开发平台之一。随着Java以及Java社区的不断壮大,Java也早已不再是简简单单的一门计算机语言了,它更是一个平台、一种文化、一个社区。

  • 作为一个平台,Java虚拟机扮演着举足轻重的作用。
    • Groovy、Scala、JRuby、Kotlin等都是Java平台的一部分。
  • 作为一种文化,Java几乎成为了“开源”的代名词。
    • 第三方开源软件和框架。如Tomcat、Struts、MyBatis、Spring等。
    • 就连JDK和JVM自身也有不少开源的实现,如OpenJDK、Harmony。
  • 作为一个社区,Java拥有全世界最多的技术拥护者和开源社区支持,有数不清的论坛和资料。从桌面应用软件、嵌入式开发到企业级应用、后台服务器、中间件,都可以看到Java的身影。其应用形式之复杂、参与认数之众多也令人咂舌。

Java入门使用

Java环境安装

JDK、JRE?

  • JDK(Java Development Kit Java开发工具包)

    • JDK是提供给Java开发人员使用的,其中包含了java的开发工具,也包括了JRE。所以安装了JDK,就不用在单独安装JRE了。
    • 其中的开发工具:编译工具(javac.exe) 、执行工具(java.exe)、打包工具(jar.exe)、文档工具(javadoc.exe)等
  • JRE(Java Runtime Environment Java运行环境)

    • 包括Java虚拟机(JVM Java Virtual Machine)和Java程序所需的核心类库等,如果想要运行一个开发好的Java程序,计算机中只需要安装JRE即可。

JDK = JRE + 开发工具集(例如Javac编译工具等)
JRE = JVM + Java SE标准类库

JDK、JRE、JVM关系:Java 8 platform

JDK环境安装

详细介绍在我的这篇博客里:点击前往

写一个Java程序

步骤如下:

  1. 编写程序
    在桌面上新建一个文件夹,进入文件夹,新建一个文本文档,并写下如下代码并保存:

    public class Hello {
      public static void main(String[] args) {
    System.out.println("Hello World!");
      }
    }	
    

    在这里插入图片描述
    重命名文件为 Hello.java
    在这里插入图片描述
    在这里插入图片描述

  2. 运行程序
    在该文件夹上键入cmd后回车打开命令行窗口,并且按顺序执行命令:javac Hello.javajava Hello
    在这里插入图片描述
    在这里插入图片描述
    以上程序就运行成功啦!运行结果就是输出 Hello World!

总结流程:

  1. 编写:将编写的Java代码保存在以“.java”结尾的源文件中。

  2. 编译:使用编译工具javac.exe编译我们的java源文件。结果:生成字节码文件(.class后缀)
    命令行的命令格式:javac 源文件名.java

  3. 运行:使用java.exe解释运行我们的字节码文件。结果:运行程序
    命令行的命令格式:java 类名

以上就是Java程序的最简单的模样。而Java程序的执行原理又是什么呢?以下进行说明。

Java程序的工作原理

由四方面组成:

(1)Java编程语言

(2)Java类文件格式

(3)Java虚拟机

(4)Java API

Java的核心是Java虚拟机(JVM:Java Virtual Machine),我们将遵守Java语言规范的代码编写存储到.java格式的文件中,然后使用javac.exe编译器编译该文件,编译器会将该文件编译成字节码文件(.class后缀),然后可以使用java.exe运行字节码文件此时才真正运行该Java程序,Java程序运行是在JVM上运行的。Java官方提供了一些API(Application Programming Interface),也就是一些封装好的类库供我们编写代码时使用,使我们编程更便利。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值