课时3:Java简介(Java主要特点)

简介: 本文介绍了Java的主要特点及其运行机制。Java结合了编译型和解释型语言的优点,通过Java虚拟机(JVM)实现跨平台移植,简化了不同操作系统间的开发流程。Java的特点包括可移植性、简单易用、支持多线程编程、自动垃圾收集和面向对象编程。随着硬件技术的发展,Java的性能问题已大大改善,成为行业标准之一,广泛应用于各种商用平台开发。

课时3:Java简介(Java主要特点)


摘要:

1. Java的运行机制

2. Java虚拟机

3. Java特点

 

本节介绍Java的主要特点。

自从美国从2003年火箭上天使用了Java技术后,Java就火了。国内最初做Java的两家互联网公司一个是网易,是第一批互联网工程师;


第二家是ChinaRen,老板是陈一舟,将校友录卖给了搜狐,收了四家小网站,其中最出名的是人人,现在校内网和人人网业绩都开始下滑。校内网是画圈,而现在微信画圈更加方便,所以造成了发展滞后。

 

01.Java的运行机制

 

任何计算机的高级语言分为两类:一个是编译型一个是解释型。编译型:C语言编译后会形成.exe文件。解释型:html代码写完后放上可以自动执行。而Java是编译型和解释型两种语言的结合。


在整个Java的运行过程中有一个Java的源程序代码。源程序要经过编译,编译之后形成一个字节码文件。该字节码文件就是我们真正要使用的内容。


之后在一台电脑上解释我们要使用的程序,但是该电脑并不是一台真实的电脑,而是由硬件和软件模拟出的电脑。这台电脑就称为Java虚拟机。

image.png

在整个Java语言运行的过程中,最核心的部分就是JVM(Java虚拟机),依靠Java虚拟机可以实现平台的移植。这点在当时的环境下非常重要,当时的语言开发平台例如Linux、windows,如果没有平台移植,那么在windows下写完的程序在linux上还需要改不同接口的API或者调用一些硬件的CPU支持。


所以这就要求我们的开发代码重复并且繁琐。Java出现后简化了这一切。在最初,Java存在一个最大的问题:所有程序需要通过JVM执行,这就导致了性能的下降。但是随着现在硬件技术的发展,这点性能的损耗可以忽略。


但是对于现在的开发又会出现新的情况:电脑的设计、任何一款软件平台的设计不能占用电脑的全部资源,所以对于开发者而言需要了解内存的调优机制。在学习中需要考虑内存的调优问题。

 

02.Java虚拟机

 

首先介绍平台的过程:Java编译后会生成一个class文件,该文件独立于平台。


我们的平台寻找到是*.class文件,*.class只寻找JVM,不同的操作系统上会绑定不同的JVM,所以只要JVM的支持不变,操作系统也不变。在整个JVM的基础上JVM就相当于是一个语言的转换机制。

image.png

 

03.Java特点

 

除了JVM之外,Java也有如下的几个特点:

1. Java具备有可移植性;

2. Java语言的开发足够简单;

3. Java是为数不多支持多线程编程的开发语言;(多线程与系统调优有直接联系)

4. Java支持自动的垃圾收集处理;

5. Java是一门面向对象的编程语言。

 

Java发展到今天已经成为了一种事实上的行业标准。可能有无数语言都支持商用平台开发,但是该无数语言的套路还是Java的套路,无非是有的通过三行实现,有的通过一行实现。所以到今天为止学习Java的形式都类似,支持度也很好,支持几十个框架,框架中又支持几十个文档。

相关文章
|
3月前
|
人工智能 安全 Java
Go与Java泛型原理简介
本文介绍了Go与Java泛型的实现原理。Go通过单态化为不同类型生成函数副本,提升运行效率;而Java则采用类型擦除,将泛型转为Object类型处理,保持兼容性但牺牲部分类型安全。两种机制各有优劣,适用于不同场景。
95 24
|
3月前
|
人工智能 Java
java中static关键字简介
`static`关键字用于修饰类的成员变量和方法,使其属于类而非对象。静态成员可通过类名直接访问,无需实例化对象。静态方法只能访问静态成员,不能直接访问非静态成员或使用`this`关键字。此外,静态代码块在类首次加载时执行且仅执行一次,适用于初始化操作。
120 0
|
7月前
|
存储 缓存 算法
JVM简介—1.Java内存区域
本文详细介绍了Java虚拟机运行时数据区的各个方面,包括其定义、类型(如程序计数器、Java虚拟机栈、本地方法栈、Java堆、方法区和直接内存)及其作用。文中还探讨了各版本内存区域的变化、直接内存的使用、从线程角度分析Java内存区域、堆与栈的区别、对象创建步骤、对象内存布局及访问定位,并通过实例说明了常见内存溢出问题的原因和表现形式。这些内容帮助开发者深入理解Java内存管理机制,优化应用程序性能并解决潜在的内存问题。
317 29
JVM简介—1.Java内存区域
|
7月前
|
搜索推荐 Java Android开发
课时146:使用JDT开发Java程序
在 Eclipse 之中提供有 JDT环境可以实现java 程序的开发,下面就通过一些功能进行演示。 项目开发流程
255 0
|
7月前
|
Oracle Java 关系型数据库
课时37:综合实战:数据表与简单Java类映射转换
今天我分享的是数据表与简单 Java 类映射转换,主要分为以下四部分。 1. 映射关系基础 2. 映射步骤方法 3. 项目对象配置 4. 数据获取与调试
113 1
|
7月前
|
存储 Java 编译器
课时11:综合实战:简单Java类
本次分享的主题是综合实战:简单 Java 类。主要分为两个部分: 1.简单 Java 类的含义 2.简单 Java 类的开发
|
7月前
|
Java 程序员 数据处理
课时19:Java运算符(位运算符)
课时19介绍Java中的位运算符,涵盖进制转换、位与、位或及移位操作。重点讲解了二进制与其他进制的转换方法,通过具体范例演示了位与和位或运算的过程,并展示了八进制和十六进制的处理方式。此外,还解释了逻辑运算符(&&、||)与位运算符(&、|)的区别及其应用场景,特别是位运算在加密中的应用。
124 5
|
7月前
|
Java
课时18:Java运算符(逻辑运算符)
课时18介绍了Java中的逻辑运算符(与、或、非)。通过范例详细讲解了非操作的使用,展示了如何正确应用逻辑非(!)。接着分别探讨了与操作(& 和 &&)及或操作(| 和 ||),强调了短路运算符(&& 和 ||)在性能和安全性上的优势。课程通过具体代码示例演示了不同逻辑运算符的效果及其应用场景。
167 5
|
7月前
|
Java
课时17:Java运算符(关系运算符)
范例:进行关系判断。如果要进行关系运算的操作可使用:>、<、>=、<=、!=(不等于)、==。所有的关系运算符判断完成的数据返回结果都是布尔类型(boolean)。只要使用关系运算符进行逻辑判断,最终的结果就是布尔型,只有true和false两种结果,而且能和if语句结合使用。
105 6
|
7月前
|
Java
课时16:Java运算符(三目运算符)
范例:将两个变量值在大的内容赋值给新变量。三目是一种赋值运算,它指的是根据条件来进行判断。(根据判断的结果来决定赋值内容)对于三目运算的基本使用语法如下: 数据类型 变量 = 布尔表达式 ?条件满足时赋值内容:条件不满足时:赋值内容