Java期末复习速成(一)

  • Java期末复习速成(一)

  • Java概述

    • 什么是Java?

    • Java的特点

    • Java开发环境

      • JDK

      • JRE

  • Java开发环境配置

Java概述

=======================================================================


什么是Java?


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

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

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

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

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

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

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等。

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

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

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

在这里插入图片描述

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

在这里插入图片描述

Java是跨平台的,已编译的Java程序可以在任何带有JVM的平台上运行。你可以在Windows 平台下编写代码,然后拿到Linux平台下运行,该如何实现呢?

首先你需要在应用中编写Java 代码;

Eclipse 或者 javac 把Java代码编译为.class文件;

然后把你的.class文件打成.jar文件;

然后你的.jar文件就能够在Windows 、Mac OS X、Linux系统下运行了。不同的操作系统有不同的JVM实现,切换平台时,不需要再次编译你的Java 代码了。这是特点五。

Java能够容易实现多线程

Java是一门高级语言,高级语言会对用户屏蔽很多底层实现细节。比如Java是如何实现多线程的。从操作系统的角度来说,实现多线程的方式主要有下面这几种:

  • 在用户空间中实现多线程

  • 在内核空间中实现多线程

  • 在用户和内核空间中混合实现线程

而我认为Java应该是在用户空间实现的多线程,内核是感知不到 Java存在多线程机制的。这是特点六。

Java具有高性能

我们编写的代码,经过javac 编译器编译称为字节码(bytecode),经过JVM内嵌的解释器将字节码转换为机器代码,这是解释执行,这种转换过程效率较低。但是部分JVM的实现比如Hotspot JVM都提供了**JIT(Just-In-Time)**编译器,也就是通常所说的动态编译器,JIT能够在运行时将热点代码编译机器码,这种方式运行效率比较高,这是编译执行。所以Java不仅仅只是一种解释执行的语言。这是特点七。

Java语言具有健壮性

Java的强类型机制、异常处理、垃圾的自动收集等是Java程序健壮性的重要保证。这也是Java与C语言的重要区别。这是特点八。

Java 很容易开发分布式项目

Java语言支持 Internet应用的开发,Java中有 net api,它提供了用于网络应用编程的类库,包括URL、URLConnection、Socket、ServerSocket等。Java的 **RMI(远程方法激活)**机制也是开发分布式应用的重要手段。这是特点九。

Java开发环境


JDK

当然,我可以帮你复习数据结构的一些基本知识点。数据结构是计算机科学中非常重要的一门课程,它研究的是如何组织和存储数据,以及如何高效地操作和处理数据。以下是一些数据结构的基本知识点: 1. 数组:数组是一种线性数据结构,它由相同类型的元素组成,并按照一定的顺序存储在连续的内存空间中。数组的特点是可以通过下标快速访问元素。 2. 链表:链表也是一种线性数据结构,它由节点组成,每个节点包含一个数据元素和一个指向下一个节点的指针。链表的特点是插入和删除操作比较高效,但访问元素需要遍历。 3. 栈:栈是一种后进先出(LIFO)的数据结构,只允许在栈顶进行插入和删除操作。栈可以用来实现函数调用、表达式求值等。 4. 队列:队列是一种先进先出(FIFO)的数据结构,只允许在队尾插入元素,在队头删除元素。队列可以用来实现任务调度、消息传递等。 5. 树:树是一种非线性数据结构,它由节点和边组成。每个节点可以有多个子节点,但只有一个父节点。树的应用非常广泛,例如二叉树、二叉搜索树、堆等。 6. 图:图是一种非线性数据结构,它由节点和边组成。节点表示实体,边表示节点之间的关系。图可以用来表示网络、社交关系等。 这些只是数据结构中的一部分知识点,还有很多其他的内容。如果你有具体的问题或者需要深入了解某个知识点,请告诉我。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值