首页 > 知识问答 >新闻内容

Java语言有什么特点?

2020年09月09日 11:41

1.简单性

Java看起来设计得很像C++,但是为了使语言小和容易熟悉,设计者们把C++语言中许多可用的特征去掉了,这些特征是一般程序员很少使用的。例如,Java不支持go to语句,代之以提供break和continue语句以及异常处理。Java还剔除了C++的操作符过载(overload)和多继承特征,并且不使用主文件,免去了预处理程序。因为Java没有结构,数组和串都是对象,所以不需要指针。Java能够自动处理对象的引用和间接引用,实现自动的无用单元收集,使用户不必为存储管理问题烦恼,能更多的时间和精力花在研发上。

2.面向对象

Java是一个面向对象的语言。对程序员来说,这意味着要注意应中的数据和操纵数据的方法(method),而不是严格地用过程来思考。在一个面向对象的系统中,类(class)是数据和操作数据的方法的集合。数据和方法一起描述对象(object)的状态和行为。每一对象是其状态和行为的封装。类是按一定体系和层次安排的,使得子类可以从超类继承行为。在这个类层次体系中有一个根类,它是具有一般行为的类。Java程序是用类来组织的。

Java还包括一个类的扩展集合,分别组成各种程序包(Package),用户可以在自己的程序中使用。例如,Java提供产生图形用户接口部件的类(java.awt包),这里awt是抽象窗口工具集(abstract windowing toolkit)的缩写,处理输入输出的类(java.io包)和支持网络功能的类(java.net包)。

3.分布性

Java设计成支持在网络上应用,它是分布式语言。Java既支持各种层次的网络连接,又以Socket类支持可靠的流(stream)网络连接,所以用户可以产生分布式的客户机和服务器。网络变成软件应用的分布运载工具。Java程序只要编写一次,就可到处运行。

4.编译和解释性

Java编译程序生成字节码(byte-code),而不是通常的机器码。Java字节码提供对体系结构中性的目标文件格式,代码设计成可有效地传送程序到多个平台。Java程序可以在任何实现了Java解释程序和运行系统(run-time system)的系统上运行。

在一个解释性的环境中,程序开发的标准“链接”阶段大大消失了。如果说Java还有一个链接阶段,它只是把新类装进环境的过程,它是增量式的、轻量级的过程。因此,Java支持快速原型和容易试验,它将导致快速程序开发。这是一个与传统的、耗时的“编译、链接和测试”形成鲜明对比的精巧的开发过程。

5.稳健性

Java原来是用作编写消费类家用电子产品软件的语言,所以它是被设计成写高可靠和稳健软件的。Java消除了某些编程错误,使得用它写可靠软件相当容易。

Java是一个强类型语言,它允许扩展编译时检查潜在类型不匹配问题的功能。Java要求显式的方法声明,它不支持C风格的隐式声明。这些严格的要求保证编译程序能捕捉调用错误,这就导致更可靠的程序。

可靠性方面最重要的增强之一是Java的存储模型。Java不支持指针,它消除重写存储和讹误数据的可能性。类似地,Java自动的“无用单元收集”预防存储漏泄和其它有关动态存储分配和解除分配的有害错误。Java解释程序也执行许多运行时的检查,诸如验证所有数组和串访问是否在界限之内。

异常处理是Java中使得程序更稳健的另一个特征。异常是某种类似于错误的异常条件出现的信号。使用try/catch/finally语句,程序员可以找到出错的处理代码,这就简化了出错处理和恢复的任务。

6.安全性

Java的存储分配模型是它防御恶意代码的主要方法之一。Java没有指针,所以程序员不能得到隐蔽起来的内幕和伪造指针去指向存储器。更重要的是,Java编译程序不处理存储安排决策,所以程序员不能通过查看声明去猜测类的实际存储安排。编译的Java代码中的存储引用在运行时由Java解释程序决定实际存储地址。

Java运行系统使用字节码验证过程来保证装载到网络上的代码不违背任何Java语言限制。这个安全机制部分包括类如何从网上装载。例如,装载的类是放在分开的名字空间而不是局部类,预防恶意的小应用程序用它自己的版本来代替标准Java类。

7.可移植性

Java使得语言声明不依赖于实现的方面。例如,Java显式说明每个基本数据类型的大小和它的运算行为(这些数据类型由Java语法描述)。

Java环境本身对新的硬件平台和操作系统是可移植的。Java编译程序也用Java编写,而Java运行系统用ANSIC语言编写。

8.高性能

Java是一种先编译后解释的语言,所以它不如全编译性语言快。但是有些情况下性能是很要紧的,为了支持这些情况,Java设计者制作了“及时”编译程序,它能在运行时把Java字节码翻译成特定CPU(中央处理器)的机器代码,也就是实现全编译了。

Java字节码格式设计时考虑到这些“及时”编译程序的需要,所以生成机器代码的过程相当简单,它能产生相当好的代码。

9.多线程性

Java是多线程语言,它提供支持多线程的执行(也称为轻便过程),能处理不同任务,使具有线索的程序设计很容易。Java的lang包提供一个Thread类,它支持开始线索、运行线索、停止线索和检查线索状态的方法。

Java的线索支持也包括一组同步原语。这些原语是基于监督程序和条件变量风范,由C.A.R.Haore开发的广泛使用的同步化方案。用关键词synchronized,程序员可以说明某些方法在一个类中不能并发地运行。这些方法在监督程序控制之下,确保变量维持在一个一致的状态。

10.动态性

Java语言设计成适应于变化的环境,它是一个动态的语言。例如,Java中的类是根据需要载入的,甚至有些是通过网络获取的。



相关推荐

租房时,合同要注意!

租房时,合同很关键,稍有疏忽,就容易让别有用心之人钻了空子,让人叫苦不迭。北京,发生过这样一件租客给房东设陷阱的事情,由于租房合同里没有明确租房用途,所以满屋的狗成了房东的座上客,房东不干了,于是要求租客退房,而租客却要根据合同,让房主赔付双倍押金。后来,警察介入,才发现这是一起团伙作案。类似这种情况被政府发现后立下规矩,在《商品房屋租赁管理办法》中规定,承租人应当按照合同约定的租赁用途和使用要求合理使用房屋。从房东被租客要求赔付押金的事情中可以看出,租房这一过程中,房东和租客的利益都需要保护,房东不一定都是损租客肥自己,租客也不一定都是弱势群体,俗话说得好:“风水轮流转,明年到我家”,“三十年河东,三十年河西”,用辩证唯物主义观点来看就是,事物是变化发展的。但是,这种变化发展的方向并不是向好的,所以得纠正过来。房东和租客,都需要一个平台,一个公平公正、诚信透明的第三方平台,把彼此的“意图”摆在桌面上,这样,才能让他们双方和谐相处。而这个平台,租客网就可以提供,租客网zuke.com成立于2016年,是一家集房产租赁服务、闲置物品租赁服务、专业技能外包服务和租客人生安全保障服务为一体的以数据驱动的价值链生活服务平台。平台为租赁双方用户提供全面真实的相关信息,租客网通过整合各方资源,起到租客和房东之间的“保姆管家”角色,一方面为公寓主、房东、中介、房产开发商导流,轻松房屋托管,租金如期到账;另一方面做到为广大租客提供高品质、全方位的房屋租赁服务。房东和租客的矛盾,归根结底,是需求与供给的矛盾,如果协调好,那么就都受益,如果处理不好,就会影响整体和谐,而租客网的应需而生,就是为了解决这一亘古不变的难题,让租客拥有自己权利的同时,自觉地维护房东的利益,而房东也不再是强势一方,他们都是需要保护的,损害任何一方的利益,都会让整个房屋租赁市场遭到地震,那样的后果,可能就没人敢向外出租房屋,租客也就没有落脚之地了。因为租房合同引起的争议比比皆是,以上例子证明租房合同没写清,一旦引起了争议,房东也会不小心坠入陷阱,你是不是也经常遇到出租的尴尬处境?你的租房争议是否得到妥善解决方案?

2020年08月30日 14:20

怎么找回手机备忘录不小心删除的信息?

手机备忘录,因为使用起来比较方便,是我们现在大多数人都会用的一个记事应用。手机备忘录虽然使用起来便捷高效,但是用的时候也经常容易遇到一些问题,比如最近就有人问我,怎么找回手机备忘录不小心删除的信息。不小心删除了信息,这确实是挺麻烦的,如果不小心删除的信息不重要还好,但是如果删除的是很重要的信息,那真的是挺难搞的。不过这个问题可难不倒小编我,毕竟小编我也是手机备忘录的重度用户。今天小编啊少就给大家讲下怎么找回手机备忘录删除的信息。一般来说,手机备忘录里的信息不小心删除了,只要是没有损坏的情况下是可以恢复的。本文主要讲的是苹果手机备忘录恢复信息的方法:1、通过自带恢复功能找回如果你在编辑备忘录的时候,不小心把信息删除了,在没有退出编辑页面的情况下是可以立刻恢复的。操作方法,把手机使劲摇一摇,你会发现摇出了一个恢复功能界面,界面上会显示撤销删除的提示,点击撤销删除即可。切记,使用这个方法的前提是没有退出编辑页面!2、通过icloud恢复找回用过苹果手机的朋友都知道icloud,icloud是苹果公司提供的一个云存储服务,可以同步手机上的各种信息。通过icloud恢复找回信息的操作方法:打开手机设置ID账户,点击备忘录,关闭后重开,等待几分钟,再打开备忘录,可以看到备忘录不小心删除的信息从icloud恢复回来了。用这个方法恢复的前提是在有WIFI的情况下操作哦。3、通过专业工具恢复如果以上两种方法都没用,可以尝试下载一些专业的恢复软件试下能不能恢复。实在不行就找专业的人士帮你恢复找回信息吧,毕竟手机删除的信息是数据化的东西,还是需要通过专门做数据恢复的人才能找回,他们会通过一些专业的工具帮你恢复信息。想要避免丢失信息,最有效的方法还是备份比较靠谱,生活和工作中一些重要的信息、图片或者视频,我们都应该养成及时备份的好习惯,以防不时之需。小编我平时也用备忘录,在我用备忘录writenow记事的时候,我也会把重要的事情上传云库备份,毕竟有些事情还是很重要的,丢了还挺麻烦的。希望以上分享能帮上你。

2020年06月20日 11:38

最前线丨战投华谊兄弟,阿里影业大涨7%,华谊兄弟涨停

4月29日,华谊兄弟发布非公开发行A股股票预案,拟以2.78元/股非公开发行合计不超过823,741,004股,募集资金总额不超过22.9亿元。发行对象为阿里影业、腾讯计算机、阳光人寿、象山大成天下、豫园股份、名赫集团、信泰人寿、三立经控、山东经达九家公司。全部发行对象均以现金方式认购本次发行的股份。认购名单中,阿里影业的关联方杭州阿里创业投资有限公司及其一致行动人合计持有华谊兄弟8.03%的股份,腾讯计算机持有7.90%的股份,二者与华谊兄弟构成关联关系。这是腾讯与华谊兄弟的再度合作,双方将在电影、游戏、文学的IP转化、短视频内容创作与聚合以及国际市场等方面探索合作可能性。阿里影业则是在2019年与华谊兄弟签订战略协议、通过企业借款形式为其提供7亿资金后,首次以华谊兄弟的战投股东身份出现。根据公告内容,华谊兄弟本次非公开发行引入战略投资者,一方面以期在公司的各主营业务板块方面达成战略合作,提升市场竞争力和股东回报;另一方面也在于满足公司业务发展对于流动资金的需求。发行预案公布的同时,华谊兄弟发布2020年一季度报,报告期内,其经营活动产生的现金流量净额为净流出39,424.92万元,较上年同期下降171.74%;公司投资活动产生的现金流量净额为净流入13,202.58万元,较上年同期上升225.04%;筹资活动产生的现金流量净额为净流出2,368.15万元,较上年同期减少95.99%。鉴于公司“轻资产”的影视作品生产模式及产品制作周期长的特点,其未来对流动资金的需求将进一步增加。根据华谊兄弟业绩报告,2020年1-3月,公司实现营业收入2.29亿元,同比下降61.38%;归属于上市公司股东的净利润-1.43亿元,同比下降52.64%。截至发稿,华谊兄弟涨停,报3.94元。阿里影业今日盘中一度大涨7.22%至1.04港元,现涨5.15%报1.02港元。

2020年04月29日 14:24