《Java 开发从入门到精通》—— 第1章 Java之印象 1.1 初步认识Java

简介: Java是由Sun公司于1995年5月推出的Java程序设计语言(以下简称Java语言)和Java平台的总称。用Java实现的HotJava浏览器(支持Java Applet)向我们展示了Java语言的魅力:跨平台、动态的Web、Internet计算。

本节书摘来异步社区《Java 开发从入门到精通》一书中的第1章,第1.1节,作者: 扶松柏 , 陈小玉,更多章节内容可以访问云栖社区“异步社区”公众号查看。

第1章 Java之印象

Java 开发从入门到精通
究竟Java是什么呢?为什么让你在众多语言中选择并学习这门语言呢?本章将会为读者讲解这些疑惑。学完本章的内容,相信初学者会对Java有一个深刻的印象。

本章内容

  • 初步认识Java
  • 面向对象

技术解惑

  • 卓越者的总结
  • 对初学者的3条建议
  • 理解Java的垃圾回收机制

1.1 初步认识Java

1_1_1   知识点讲解:光盘:视频PPT讲解(知识点)第1章初步认识Java.mp4

纵观各大主流招聘媒体,总是会看到多条招聘Java程序员的广告。由此可以看出,Java程序员很受市场欢迎。在本节将带领大家认识Java这门语言,为读者步入本书后面知识的学习打下基础。

1.1.1 都在谈论Java

Java是由Sun公司于1995年5月推出的Java程序设计语言(以下简称Java语言)和Java平台的总称。用Java实现的HotJava浏览器(支持Java Applet)向我们展示了Java语言的魅力:跨平台、动态的Web、Internet计算。从那以后,Java便被广大程序员和企业用户广泛接受,成为了受欢迎的编程语言之一。

Java平台由Java虚拟机(Java Virtual Machine)和Java应用编程接口(Application Programming Interface,API)构成。Java应用编程接口为Java应用提供了一个独立于操作系统的标准接口,可分为基本部分和扩展部分。在硬件或操作系统平台上安装一个Java平台之后,Java应用程序就可运行。现在,Java平台已经嵌入到了几乎所有的操作系统。这样Java程序只需编译一次,就可以在各种系统中运行。

Java分为如下3个体系。

  • JavaSE:Java2 Platform Standard Edition的缩写,即Java平台标准版。
  • JavaEE:Java 2 Platform Enterprise Edition的缩写,即Java平台企业版。
  • JavaME:Java 2 Platform Micro Edition的缩写,即Java平台微型版。

1.1.2 Java的特点

简单:Java语言的语法与C语言和C++语言十分接近,这样大多数程序员可以很容易地学习和使用Java。另外,Java还丢弃了C++中很少使用的、很难理解的那些特性,例如,操作符重载、多继承、自动强制类型转换等。并且令广大学习者高兴的是Java不再使用指针,学习者再也不用为学习指针而发愁。Java还为我们提供了自动废料收集机制,使得程序员不必再为内存管理而担忧。
面向对象:Java语言提供了类、接口和继承等特性。为了简单起见,Java只支持类之间的单继承和接口之间的多继承,并且也支持类与接口之间的实现机制。总之,Java语言是一门纯粹面向对象的程序设计语言。
分布式:Java语言支持Internet应用开发,在基本的Java应用编程接口中有一个网络应用编程接口(java.net),通过这个接口提供了用于网络应用编程的类库,包括URL、URLConnection、Socket、 ServerSocket等。Java的RMI(远程方法激活)机制也是开发分布式应用的重要手段。
健壮:Java的强类型机制、异常处理、废料的自动收集等是Java程序健壮性的重要保证。Java通过安全检查机制,使Java程序更具健壮性。
Java语言是安全的:程序员通常在网络环境中使用Java语言,所以,Java为我们提供了一个安全机制以防止被恶意代码攻击。Java语言除了具有的许多安全特性以外,还为网络下载应用提供了一个安全防范机制(ClassLoader类),例如,分配不同的名字空间以防替代本地的同名类。字节代码检查和安全管理机制(SecurityManager类)为Java应用程序提供了一个“安全哨兵”。
可移植:可移植性是指能够在不同的开发平台和服务器平台上使用,不管是微软的产品还是其他产品。Java的运行环境是用ANSI C实现的,所以,Java系统本身具有很强的可移植性,可以在很多平台上运行。
解释型:Java程序在Java平台上被编译为字节码格式,这样就可以在实现这个Java平台的任何系统中运行。在运行时,Java平台中的Java解释器对这些字节码进行解释执行,执行过程中需要的类在联接阶段被载入到运行环境中。
高性能:与那些解释型的高级脚本语言相比,Java的确是高性能的。随着JIT(Just-In-Time)编译器技术的发展,Java的运行速度已经越来越接近于C++。
多线程:当程序需要同时处理多项任务时就需要多线程开发,一个程序在同一时间只能做一件事情的功能过于简单,肯定无法满足现实的需求。在实际的应用中,多线程开发是必不可少的,多线程的目的是在同一时间可以做多件事情,并且可以开启多个线程同时做一件事情,这样可以提高效率。不管是对于C语言、C++还是其他的程序设计语言,线程都是一个十分重要的知识点,多线程是现代开发软件系统的发展方向,Java作为主流的程序设计语言,它当然是支持多线程的,具有并发性,其执行的效率很高。
动态:Java语言的设计目标之一是适应于动态变化的环境。Java程序中的类需要能够动态地被载入到运行环境中,也可以通过网络来载入所需要的类。动态语言的好处是有利于软件升级。

1.1.3 Java中的一些名词解释

在Java语言中有许多专业术语,这些专业术语通常是指Java语言下的一个技术或者一个功能,下面介绍一些常用的技术名词。

1.JDBC

JDBC(Java DataBase Connectivity)提供连接各种关系数据库的统一接口,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。JDBC为数据库开发人员提供了一个标准的API,使数据库开发人员能够用纯 Java API编写数据库应用程序。

2.EJB

EJB(Enterprise JavaBeans)使得程序员可以方便地创建、部署和管理跨平台的基于组件的企业应用。

3.Java RMI

Java RMI(Java Remote Method Invocation)用来开发分布式Java应用程序。一个Java对象的方法能被远程Java虚拟机调用,这样可以在对等的两端激活远程方法,这也可以发生在客户端和服务器之间,只要双方的应用程序都是用Java编写的。

4.Java IDL

Java IDL(Java Interface Definition Language)提供了与CORBA(Common Object Request Broker Architecture)的无缝互操作性,这使得Java能集成异构的商务信息资源。

5.JNDI

JNDI(Java Naming and Directory Interface)提供了从Java平台到应用程序的统一无缝连接,这个接口屏蔽了企业网络所使用的各种命名和目录服务。

6.JMAPI

JMAPI(Java Management API)为异构网络上系统、网络和服务管理的开发提供一整套丰富的对象和方法。

7.JMS

JMS(Java Message Service)提供了企业消息服务,例如,可靠的消息队列、发布和订阅通信,以及有关推拉(Push/Pull)技术的各个方面。

8.JTS

JTS(Java Transaction Service)提供了存取事务处理资源的开放标准,这些事务处理资源包括事务处理应用程序和事务处理管理及监控等。

9.JavaBean

在Java技术中,除了上面的内容,还需要特别关注JavaBeans技术,它是一个开放的、标准的组件体系结构,它虽然独立于平台,但是,使用Java语言开发。

相关文章
|
15天前
|
监控 JavaScript 前端开发
《理解 WebSocket:Java Web 开发的实时通信技术》
【4月更文挑战第4天】WebSocket是Java Web实时通信的关键技术,提供双向持久连接,实现低延迟、高效率的实时交互。适用于聊天应用、在线游戏、数据监控和即时通知。开发涉及服务器端实现、客户端连接及数据协议定义,注意安全、错误处理、性能和兼容性。随着实时应用需求增加,WebSocket在Java Web开发中的地位将更加重要。
|
8天前
|
运维 NoSQL 算法
Java开发-深入理解Redis Cluster的工作原理
综上所述,Redis Cluster通过数据分片、节点发现、主从复制、数据迁移、故障检测和客户端路由等机制,实现了一个分布式的、高可用的Redis解决方案。它允许数据分布在多个节点上,提供了自动故障转移和读写分离的功能,适用于需要大规模、高性能、高可用性的应用场景。
15 0
|
10天前
|
人工智能 小程序 Java
JAVA开发智慧学校系统源码+人脸电子班牌布局
智慧校园是通过利用物联网,大数据技术来改变师生和校园资源相互交互的方式,以便提高交互的明确性、灵活性和响应速度,从而实现智慧化服务和管理的校园模式。
|
16天前
|
XML JSON JavaScript
使用JSON和XML:数据交换格式在Java Web开发中的应用
【4月更文挑战第3天】本文比较了JSON和XML在Java Web开发中的应用。JSON是一种轻量级、易读的数据交换格式,适合快速解析和节省空间,常用于API和Web服务。XML则提供更强的灵活性和数据描述能力,适合复杂数据结构。Java有Jackson和Gson等库处理JSON,JAXB和DOM/SAX处理XML。选择格式需根据应用场景和需求。
|
16天前
|
前端开发 Java API
构建RESTful API:Java中的RESTful服务开发
【4月更文挑战第3天】本文介绍了在Java环境中构建RESTful API的重要性及方法。遵循REST原则,利用HTTP方法处理资源,实现CRUD操作。在Java中,常用框架如Spring MVC简化了RESTful服务开发,包括定义资源、设计表示层、实现CRUD、考虑安全性、文档和测试。通过Spring MVC示例展示了创建RESTful服务的步骤,强调了其在现代Web服务开发中的关键角色,有助于提升互操作性和用户体验。
构建RESTful API:Java中的RESTful服务开发
|
20天前
|
存储 安全 Java
【Java技术专题】「Guava开发指南」手把手教你如何进行使用Guava工具箱进行开发系统实战指南(不可变集合篇)
【Java技术专题】「Guava开发指南」手把手教你如何进行使用Guava工具箱进行开发系统实战指南(不可变集合篇)
30 1
|
20天前
|
Java API Apache
【Java技术专题】「Guava开发指南」手把手教你如何进行使用Guava工具箱进行开发系统实战指南(基础编程篇)
【Java技术专题】「Guava开发指南」手把手教你如何进行使用Guava工具箱进行开发系统实战指南(基础编程篇)
43 0
|
29天前
|
Java API 计算机视觉
java实现人脸识别V3版本开发
java实现人脸识别V3版本开发
17 0
|
1月前
|
缓存 Java 关系型数据库
Java开发面试题 | 2023
Java开发面试题 | 2023
|
1月前
|
网络协议 Java Linux
Java 开发常用的 Linux 命令知识积累
Java 开发常用的 Linux 命令知识积累
37 0