项目 内容
课程班级博客链接 19级信计班
作业要求链接 实验一
课程学习目标 大致学会Markdown排版
任务1:在博客园平台注册个人博客账号和加入班级博客

注册了博客园的个人账号,提交了博客申请,申请审核通过后加入了班级博客。

任务2:构建之法与博客首秀

修改博客园博客默认编辑器,在博客撰写中练习 MarkDown。

任务3:回答课本P18第2、4小题。

2.Java的特征有哪些?简述这些特征的含义。

答:Java语言的特征包括:简单(Simple)、面向对象(Object oriented)、分布式(Distributed)、解释型(Interpreted)、健壮(Robust)、安全(Secure)、体系结构中立(Architecture neutral)、可移植(Portable)、高性能(High performance)、多线程(Multithreaded)和动态(Dynamic)。

简单性:Java语言语法和语义都比较单纯,容易学习和使用。另外,去掉C++中的指针,取消多重继承和运算符重载,内存管理由程序员移向Java内嵌的自动内存回收机制等。

面向对象:作为一种面向对象的编程语言,Java不仅最为“纯洁”,也对面向对象方法学的支持也最为全面。Java的对象有模块化性质和信息隐藏能力,满足面向对象的封装要求,同时支持继承和多态。

分布式:Java支持的分布式计算包括两种层次:一是数据分布,即应用系统所操作的数据可以分散存储在不同的网络节点上,可以通过Java的URL类访问。二是操作分布,即应用系统的计算可通过嵌在WWW页面中的Applet(小应用程序),分布到不同的网络节点完成。

半编译,半解释:采用编译器对程序进行编译,但编译得到的是一种中性的字节码,并不是本机代码,而字节码的执行采取解释执行方式。该特征,提高了Java 的可移植性,并使得Java语言兼具编译执行的效率优势和解释执行的灵活性。

健壮性:Java提供自动垃圾收集来进行内存管理,防止程序员在管理内存时容易产生的错误。通过集成的面向对象的例外处理机制,帮助程序员正确地进行选择以防止系统的崩溃。另外,Java是一种强类型语言,程序编译时要经过严格的类型检查,防止程序运行时出现类型不匹配等问题。

安全性:Java在语言和运行环境中引入了多级安全措施,其采用的主要安全机制有:内存分配及布局由Java 运行系统规定。运行系统执行基于数字签名技术的代码认证、字节码验证与代码访问权限控制的安全控制模型。

体系结构中立:Java为了做到结构中立,除了上面提到的编译生成机器无关的字节码外,还制定了完整统一的语言文本。为了使Java 的应用程序能不依赖于底层具体的系统,Java 语言环境还提供了一个用于访问底层操作系统功能的可扩展类库,当程序使用这些库时,可以确保它能运行在支持Java 的各种平台上。

可移植性:Java的最大特点是“一次编程,处处运行”。任何机器只要配备了Java解释器,便可运行Java程序。这种可移植性源于两方面:一是Java的半编译、半解释特征;另一方面是Java体系结构中立,采用标准的独立于硬件平台的数据类型。

高性能:Java语言的字节码与机器码十分接近,使得字节码到机器码的转换十分快捷。另外,Java还提供了即时编译技术,提高了Java应用的运行速度。

多线程:Java的特点是在语言级嵌入了多线程机制,支持程序的并发处理功能。从程序的角度看,一个线程就是应用程序中的一个执行流。Java 将临界区保护规则等集成到语言中实现线程同步,使这些规则的使用更加方便有效。

动态特性:Java程序的基本组成单元是类,而Java的类又是运行时动态装载的,这使将Java可以动态地维护应用程序及其支持类之间的一致性。

4.Java运行系统由哪些部分组成?Java程序运行过程是怎样的?

答:Java运行系统一般包括以下几部分:类装配器、字节码验证器、解释器、代码生成器和运行支持库。

Java运行系统运行的是字节码即.class文件。执行字节码的过程可分为三步:

(1) 代码的装入

由类装配器装入程序运行时需要的所有代码,其中包括程序代码中调用到的所有类。当装入了运行程序需要的所有类后,运行系统便可以确定整个可执行程序的内存布局。

(2) 代码的验证

由字节码检验器进行安全检查,以确保代码不违反Java的安全性规则,同时字节码验证器还可发现操作数栈溢出、非法数据类型转化等多种错误。

(3) 代码的执行

Java字节码的运行可以有两种方式:即时编译(Just-In-Time)方式和解释执行方式。

1903021126-申文骏 实验一 19信计java-Markdown排版的更多相关文章

  1. 1903021121-刘明伟 实验一 19信计JAVA—Markdown排版学习

    项目 内容 班级博客链接 19信计班(本) 作业要求链接 实验一 课程学习目标 学习使用Markdown排版 这个作业帮助我们实现了什么学习目标 学会使用Markdown排版 任务一:在博客园平台注册 ...

  2. 2018-2019-2 20175126谢文航 实验二《Java面向对象程序设计》实验报告

    一.实验报告封面 课程:Java程序设计 班级:1751 班 姓名:谢文航 学号:20175126 指导教师:娄嘉鹏 实验日期:2019年4月17日 实验时间:--- 实验序号:实验二 实验名称:Ja ...

  3. 2018-2019-2 20175126谢文航 实验一《Java开发环境的熟悉》实验报告

    一.实验报告封面 课程:Java程序设计 班级:1751班 姓名:谢文航 学号:20175126 指导教师:娄嘉鹏 实验日期:2019年3月28日 实验时间:--- 实验序号:实验一 实验名称:Jav ...

  4. 2018-2019-2 20175126谢文航 实验三《敏捷开发与XP实践》实验报告

    一.实验报告封面 课程:Java程序设计 班级:1751 班 姓名:谢文航 学号:20175126 指导教师:娄嘉鹏 实验日期:2019年5月2日 实验时间:--- 实验序号:实验三 实验名称:敏捷开 ...

  5. 2018-2019-2 20175306实验二面向对象程序设计《Java开发环境的熟悉》实验报告

    2018-2019-2 20175306实验二面向对象程序设计<Java开发环境的熟悉>实验报告 面向对象程序设计-1 实验要求: 参考:> http://www.cnblogs.c ...

  6. 2018-2019-20175205实验二面向对象程序设计《Java开发环境的熟悉》实验报告

    2018-2019-20175205实验二面向对象程序设计<Java开发环境的熟悉>实验报告 实验要求 没有Linux基础的同学建议先学习<Linux基础入门(新版)>< ...

  7. #2019-2020-4 实验二面向对象程序设计《Java开发环境的熟悉》实验报告

    2019-2020-4 实验二面向对象程序设计<Java开发环境的熟悉>实验报告 一.面向对象程序设计-1 ①实验要求: 1.参考 http://www.cnblogs.com/roced ...

  8. 利用阿里大于实现发送短信(JAVA版)

    本文是我自己的亲身实践得来,喜欢的朋 友别忘了点个赞哦! 最近整理了一下利用阿里大于短信平台来实现发送短信功能. 闲话不多说,直接开始吧. 首先,要明白利用大于发送短信这件事是由两部分组成: 一.在阿 ...

  9. 20135119_涂文斌 实验三 敏捷开发与XP实践

    北京电子科技学院(BESTI) 实  验  报  告 课程: Java        班级:1351           姓名:涂文斌          学号:20135119 成绩:         ...

  10. 20135119_涂文斌 实验二 Java面向对象程序设计

    北京电子科技学院(BESTI) 实  验  报  告 课程: Java        班级:1351           姓名:涂文斌          学号:20135119 成绩:         ...

随机推荐

  1. python requests 模拟登录

    转载: https://blog.csdn.net/m0_59485658/article/details/128115786

  2. Linux中 cat查询文件指定内容-并输入到指定文件内

    常用: ① cat xxx.log | grep -C 20 "查询关键字" ② grep -E '1805|1905' CloudPayment.log > out.log ...

  3. CamstarVP表格删除行报错

    前提:是从服务中拖出来的表格,带表达式的.但是点击删除按钮的时候,直接页面报错. 原因是:VP上面没有指定服务.

  4. 数据表主键设置自增后插入数据的mabatis写法

    研究出两种写法,因为画蛇添足修改了好久. 下面写两种正确的. <insert id="Insert" parameterType="com.aged.www.Poj ...

  5. 并发多线程学习(五)Java线程的状态及主要转化方法

    1 操作系统中的线程状态转换 首先我们来看看操作系统中的线程状态转换. 在现在的操作系统中,线程是被视为轻量级进程的,所以操作系统线程的状态其实和操作系统进程的状态是一致的. 操作系统线程主要有以下三 ...

  6. python翻译(二)

    百度翻译,通过设置参数可可以实现翻译为指定语种 baidujs1.js var i = "320305.131321201" function n(r, o) { for (var ...

  7. 【Quartus系列】实验一: 3-8译码器(原理图输⼊设计)

    实验一: 3-8译码器(原理图输⼊设计) ⼀:实验⽬的 1. 了解3-8译码器的电路原理,掌握组合逻辑电路的设计⽅法 2. 掌握QuartusII软件原理图输⼊设计的流程 ⼆:实验内容 2.1设计输⼊ ...

  8. windows下rabbitmq启动报错--distribution port 25672 in use by another node: rabbit@DESKTOP-LLPGVVE

    最近公司有需求需要用到rabbitmq,因为之前习惯用的都是activemq,所以要临时学习一下,捣鼓这个rabbitmq.想着先在本地捣鼓测试一下,然后按照这个博主分享的安装方式进行安装. http ...

  9. pytorch MNIST加载已下载的数据集出现问题及解决方法

    import torch import torch.nn as nn from torch.autograd import Variable import torchvision import tor ...

  10. Word04 公司战略规划文档office真题

    1.课程的讲解之前,先来对题目进行分析,首先需要在考生文件夹下,将Wrod素材.docx文件另存为Word.docx,后续操作均基于此文件,否则不得分.   2.这一步非常的简单,打开下载素材文件,在 ...