1903021124-马沙 实验一 19信计JAVA-MARKDOWN排版学习

项目 内容
课程班级博客链接 19级信计班
这个作业要求链接 实验一
我的课程学习目标 学习Markdown排版
这个作业帮我们实现了什么学习目标 让所写文章条理清晰;检验自己的学习成果,加深对博客的了解。

任务一:在博客园平台注册个人博客账号以及加入班级博客(已完成)
任务二:学习构建之法以及完成博客首秀(已完成)
任务三:回答课本P18第2、4小题(内容见下文)

1. JAVA特征以及特征含义

1.1 简单性:
Java语言句法和语义都比较单纯,容易学习和使用。另外,Java 对C++中容易引起错误的成分进行了相当成功的改造,例如去掉指针,取消多重继承和运算符重载,内存管理由程序员移向Java内嵌的自动内存回收机制等,从而简化语义,减少出错机会,减轻程序员负担。Java还提供大量功能丰富的可重用类库,简化了编程工作量。例如,访问Internet资源,在C++中需要编写大量复杂的程序,但使用Java只需数行代码,其余工作由Java类库完成。

1.2 面向对象:
作为一种面向对象的编程语言,Java不仅最为“纯洁”,同时,它对面向对象方法学的支持也最为全面。与C++一样,Java的对象有模块化性质和信息隐藏能力,满足面向对象的封装要求。Java 支持面向对象的继承性。另外,Java 通过抽象类和接口(interface)支持面向对象的多态性要求,即一个对外接口,多种内部实现。
1.3 分布式特征:
Java具有支持分布式计算的特征。分布式计算中,“分布”具有两层含义:一是数据分布,即应用系统所操作的数据可以分散存储在不同的网络节点上;二是操作分布,即应用系统的计算可由不同的网络节点完成。Java 实现如下两种层次上的分布。
数据分布支持:通过Java的URL类,Java程序可以访问网络上的各类信息资源,访问方式完全类似于本地文件系统。
操作分布支持: Java通过嵌在www页面中的Ape(小应用程序)将计算从服务器分布至客户机。Applet 由www浏览器在客户端执行,从而避免了网络拥挤,提高了系统效率。
1.4 强壮性:
Java提供自动垃圾收集来进行内存管理,防止程序员在管理内存时容易产生的错误出现。通过集成的面向对象的例外处理机制,在编译时,Java提示出可能出现但未被处理的例外,帮助程序员正确地进行选择以防止系统的崩溃。另外,Java是一种强类型语言,程序编译时要经过严格的类型检查,防止程序运行时出现类型不匹配等问题。
1.5 安全性:
Java通常被用在网络环境中,为此,Java提供了一个安全机制以防恶意代码的攻击。除了Java语言具有的许多安全特性以外,Java对通过网络下载的类具有一个安全防范机制(类ClassLoader),如分配不同的名字空间以防替代本地的同名类、字节代码检查,并提供安全管理机制(类SecurityManager)让Java应用设置安全哨兵。
1.6 体系结构中立:
Java语言的设计不是针对某种具体平台结构的。Javn 为了做到结构中立.除了上面提到的编译生成机器无关的字节码外,还制定了完整统一的语言文本。 如Java的基本数据类型不会随目标机的变化而变化,一个整型总是32位,一个长整型总是64位。像C和C++这样的现代程序设计语言并不满足这一点, 不同的编译器和开发环境之间总会有此细微的不同。
为了使Java的应用程序不依赖于底层具体的系统.Java语言环境还提供了一个用于访问底层操作系统功能的可扩展类库.例如核心语言类库java. lang、实用工具类库java. uil输人/输出类库java.io、网络通信类库java. net、图形用户界面工具类库java. awt、支持Applet的类库java. applet等。当程序使用这些库时,可以确保它能运行在支持Java的各种平台上。
1.7 可移植性:
Java是迄今为止对可移植性支持最佳的编程语言。Java 的最大特点是“一次编程.处处运行”。任何机器只要配备了Java解释器,便可运行Java程序。这种可移植性源于两方面:一是Java的半编译、半解释特征;另一方面是Java体系结构中立,采用标准的独立于硬件平台的数据类型,对数据类型都有严格的规定.并且不会因为机器的不同而改变。
1.8 半编译、半解释特征:
Java运用程序的执行过程具有半编译、半解释的特征。采用编译器对程序进行编译,但编译得到的是一种中性的字节码,并不是本机代码,编译没有进行彻底,所以称为“半编译”。字节码的执行采取解释执行方式,这种解释执行与传统的解释执行的差别是:不是以源码为输入的,而是以程序编译后产生的字节码为输入,所以称为“半解释”。这种半编译、半解释的过程兼具编译执行的效率优势和解释执行的灵活性。
1.9 高性能:
Java语言虽然采取字节码解释运行方式,但由于字节码与机器码十分接近.使得字节码到机器码的转换十分快捷。另外,Java 还提供了即时编译技术,即将要执行的字节码一次编译为机器代码,再全速运行,提高了Java应用的运行速度。这些使得Java语言在实现了可移植等特性的同时,又具有高性能。
1.10 多线程:
线程是比进程更小、开销更少的并发执行单位,它与进程的主要差异在于它不拥有单独的资源,而是与其他线程共享所属进程的资源。在Java语言出现之前.线程机制已经在操作系统领域广泛使用,并在改善系统运行效率方面取得了明显的效果。像Windows.0S 2等新型操作系统,都支持多任务的并发处理。Java 的特点是在语言级嵌人了多线程机制,支持程序的并发处理功能。从程序的角度看,一个线程就是应用程序中的一个执行流。一个Java程序可以有多个执行线程。
多线程程序设计的最大问题是线程的同步。其基本原理是C. A. R. Hoare提出的,并在许多新型操作系统中广泛使用临界区保护规则。Java 将这些原理集成到语言中,使这些规则的使用更加方便有效。
如果底层的操作系统支持多线程,Java的线程通常被映射到实际的操作系统线程中、这意昧着在多机环境下,用Java写的程序可以并行执行。
1.11动态特性:
Java的动态特性是其面向对象设计的延伸。Java程序的基本组成单元是类,二Java的类又是运行时动态装载的,这使得Java可以动态地维护应用程序及其支持类之间的一发性,而不用像(C++那样,当其支持类库升级之后,相应的应用程序都必须重新编译。

2. Java的运行系统包括以下几部分:

类装配器、字节码验证器、解释器、代码生成器和运行系统支持库

Java的运行过程是怎么样的?
Java程序从源文件创建到程序运行要经过两大步骤
1.源文件由编译器编译成字节码(ByteCode )
2.字节码由java虚拟机解释运行。
Java源文件(.java),通过java编译器(javac)编译生成一个ByteCode字节码文件(.class),字节码由java自己设计的一个计算机(即java虚拟机,JVM)解释执行,虚拟机将每一条要执行的字节码送给解释器,解释器将其翻译成特定机器上的目标机器码,然后在特定的机器上运行

posted @ 2022-03-06 17:09  cocopolaris  阅读(73)  评论(0编辑  收藏  举报