这篇 Java 基础,我吹不动了

Hey guys,这里是程序员cxuan,欢迎你收看我最新一期的文章,这篇文章我补充了一些关于《Java基础核心总结》的内容,修改了部分错别字和语句不通顺的地方,并且对内部类、泛型等内容进行了一定的补充,并且我在文章有些地方给出了一些链接,这些链接都是我自己写的硬核文章,能够更好的帮助你理解 Java 这门语言,那么废话不多说,下面开始正文。

Java 概述 什么是 Java?

Java 是 Sun Microsystems 于1995 年首次发布的一种编程语言和计算平台。编程语言还比较好理解,那么什么是 计算平台 呢?

计算平台是在电脑中运行应用程序(软件)的环境,包括硬件环境和软件环境。一般系统平台包括一台电脑的硬件体系结构、操作系统、运行时库。

Java 是快速,安全和可靠的。 从笔记本电脑到数据中心,从游戏机到科学超级计算机,从手机到互联网,Java 无处不在!Java 主要分为三个版本:

JavaSE(J2SE)(Java2 Platform Standard Edition,java平台标准版)

JavaSE 是 JavaEE 和 JavaME 的基础,JavaSE 就是基于 JDK 和 JRE,然后还包含了一些支持 Java Web 服务开发的类

JavaEE(J2EE)(Java 2 Platform,Enterprise Edition,java平台企业版)

JavaEE 一开始叫 J2EE,后来改名为 JavaEE,它是 JavaSE 的一个扩展,这是我们企业级开发使用的一个版本,包括一些 Java Web 工具包。

JavaME(J2ME)(Java 2 Platform Micro Edition,java平台微型版)。

JavaME 一般用于移动设备和嵌入式设备(比如手机、PDA、电视机顶盒和打印机)上运行的应用程序提供一个健壮且灵活的环境。

Java 的特点

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

什么是面向对象?面向对象(Object Oriented) 是一种软件开发思想。它是对现实世界的一种抽象,面向对象会把相关的数据和方法组织为一个整体来看待。

相对的另外一种开发思想就是面向过程的开发思想,什么面向过程?面向过程(Procedure Oriented) 是一种以过程为中心的编程思想。

再举个例子:比如你是个学生,你每天去上学需要做几件事情?

起床、穿衣服、洗脸刷牙,吃饭,去学校。一般是顺序性的完成一系列动作。

class student { void student_wakeUp(){...} void student_cloth(){...} void student_wash(){...} void student_eating(){...} void student_gotoSchool(){...} }

而面向对象可以把学生进行抽象,所以这个例子就会变为

class student(){ void wakeUp(){...} void cloth(){...} void wash(){...} void eating(){...} void gotoSchool(){...} }

可以不用严格按照顺序来执行每个动作。这是特点一。

Java 摒弃了 C++ 中难以理解的多继承、指针、内存管理等概念;不用手动管理对象的生命周期,这是特征二。

Java 语言具有功能强大和简单易用两个特征,现在企业级开发,快速敏捷开发,尤其是各种框架的出现,使 Java 成为越来越火的一门语言。这是特点三。

Java 是一门静态语言,静态语言指的就是在编译期间就能够知道数据类型的语言,在运行前就能够检查类型的正确性,一旦类型确定后就不能再更改,比如下面这个例子。

public void foo() { int x = 5; boolean b = x; }

静态语言主要有 Pascal, Perl, C/C++, JAVA, C#, Scala 等。

相对应的,动态语言没有任何特定的情况需要指定变量的类型,在运行时确定的数据类型。比如有**Lisp, Perl, Python、Ruby、JavaScript **等。

从设计的角度上来说,所有语言的设计目的都是用来把人类可读的代码转换为机器指令。下面是一幅语言分类图。

image-20210907222622439

动态语言是为了能够让程序员提高编码效率,因此你可以使用更少的代码来实现功能。静态语言设计是用来让硬件执行的更高效,因此需要程序员编写准确无误的代码,以此来让你的代码尽快的执行。从这个角度来说,静态语言的执行效率要比动态语言高,速度更快。这是特点四。

Java 具有平台独立性和可移植性

Java 有一句非常著名的口号: Write once, run anywhere,也就是一次编写、到处运行。为什么 Java 能够吹出这种牛批的口号来?核心就是 JVM。我们知道,计算机应用程序和硬件之间会屏蔽很多细节,它们之间依靠操作系统完成调度和协调,大致的体系结构如下

image-20210907222642565

那么加上 Java 应用、JVM 的体系结构会变为如下

image-20210907222654021

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/zzyxwg.html