阿里地区 【切换城市】

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

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中的类是根据需要载入的,甚至有些是通过网络获取的。



相关推荐

淘宝上线“小时达”服务 预计年底覆盖全国

中新经纬客户端6月4日电(常涛)近日,有部分用户发现,在淘宝App搜索“牙膏”“西瓜”等关键词时,搜索结果页会显示“小时达”,点击后,展示为天猫超市、淘鲜达及周边商超等提供的商品,用户购买后,商品在1小时内送上门。  6月4日,阿里方面表示,淘宝App已在全国16城率先上线“小时达”服务,北京、上海等多地消费者将刷新“分钟级”新零售体验。  据介绍,“小时达”频道会在消费者使用淘宝App搜索商品时触发。当消费者搜索特定商品之后,搜索结果页将在醒目位置自动跳出“小时达”频道入口,进入频道后,消费者即可找到周边能实现分钟级配送的同款商品。  “小时达”频道内的商品既有来自天猫超市,也有来自淘鲜达上的商超,同时频道内还接入了饿了么上诸多超市、便利店的商品。在购物时,消费者无需登陆不同App一家家门店搜罗,所有位于消费者身边的商品将一站式浮现,实现即搜、即买、即得。  据悉,“小时达”服务将率先在北京、上海、广州、成都、杭州、沈阳、南京、郑州、合肥、上海、武汉、苏州、重庆、厦门、深圳、天津这16个城市上线,其中北上广蓉杭沈六地已实现主城区全覆盖,预计年底将覆盖至全国。(中新经纬APP)

2020年06月05日 14:22

遇到租赁纠纷,怎么用《合同法》维权!

当下,面对高额的房价,很多人买一套房几乎是“集三代之力”,还有很多人在“望房兴叹”。所以,很多在城市打拼的人都会选择租房,特别是刚刚工作的年轻人,为了找比较便宜的房子租,屡屡“搬家”,过着“颠沛流离”的生活。现在,房租也涨了,由买不起房,到租不起房,这背后的凄凉与辛酸,没有经历过的人恐怕是无法体味的。在租赁法律关系中,房东往往处于强势地位,星爷电影《功夫》中包租婆“一三五停水……”的霸气表现,把该强势地位演绎得淋漓尽致。在租金缴纳方面,还有什么“押一付二”,甚至是“押一付三”,就更不用说了,为了能够有个地方落脚,只能臣服。其实,在现实生活当中,租赁双方的关系还是比较和谐融洽的。当然,这是建立在房东尽职尽责、不乱涨价和承租人按时缴纳租金、不损坏房屋设施的基础之上的。若一方出现问题,或者双方都出现问题,那就剑拔弩张了。现在,是一个互联网时代,很多租赁关系都是通过网络平台建立的,网络确实给我们的生产生活带来了极大的便利,但是由于利益的驱动,而鱼龙混杂。也正是由于资本的嗜血,而导致很多无良的商家出现。比如,为了让房屋租金增加而制造虚假的租赁关系(有些平台在房屋首次租赁时有优惠,所以让内部员工短期租赁,然后再出租)。再比如,有些刚刚装修好的房屋,而且有些装修材料甲醛严重超标,没有等到空气质量达到正常值就将房屋出租。但是,没有办法,“没有买卖,就没有杀害”,市场越是巨大,资本就越会疯狂的嗜血,作为市场的“弱势群体”最终会被吸干,化作一缕青烟,随风飘散……那么,作为出租人(房东)就没有什么法律来约束和惩罚他吗?有,肯定有!从合同角度分析,出租人用于出租的租赁物在出租之前就必须安全适租,那么在出租之后仍然要维护租赁物的安全适租,即有确保房屋不影响承租人人身安全、身体健康的义务。根据《合同法》第二百三十三条“租赁物危及承租人的安全或者健康的,即使承租人订立合同时明知该租赁物质量不合格,承租人仍然可以随时解除合同”之规定,当危急承租人安全或健康的,租赁合同是否解除是承租人的权利,即便是承租人不解除合同,也不能因此而免除出租人维护租赁物安全适租的义务。但是,一般的租赁合同都是房东拟定的,在条款设置方面就对房东有利,所以从《合同法》角度分析,房东的违法(违约)成本会很小。那么,由于租赁的房屋对承租人的财产、人身造成损害了,从侵权角度分析,想维权其实也并不简单。根据《侵权责任法》的相关规定,构成一般侵权的四要件:一要有侵权行为,二要有损害结果,三要有过错,四侵权行为与损害结果之间要有因果联系。用“阿里员工疑因住自如病故”事件举例,王先生生前承租的该套房屋甲醛超标(关于甲醛超标问题,房屋甲醛超标是王先生的妻子检测的),自如将不适租的房屋出租,显然已经存在过错;由于甲醛会对身体产生巨大的危害,经检测自如出租的该房屋甲醛超标,每天释放的甲醛就相当于侵权行为的产生与持续;现在王先生已经死亡,这就是损害结果。所以,在该事件当中,一要证明王先生所租赁的自如房屋甲醛是否超标,二要证明王先生的死亡与自如房屋甲醛的超标是否存在因果关系,若有,则必然需要承担侵权责任,若无,则又会是另外一番结果。所以,作为承租人,如果遇到不好的房东,遇到房屋有问题,真的很痛。维权可以,但是很多人在面对高额的维权成本(这个成本并不是单指金钱,时间、精力等这些都是成本)时,而选择了“忍气吞声”继续租下去,或者,性格比较烈的人在与房东“干一架”之后就搬离,“此处不留爷自有留爷处”,可是看着万家灯火,却不知那一盏是为自己点的,那一份悲凉,那一份辛酸,不知如何描述……都说合同是在平等、自愿的基础之上,在经过协商一致的前提下订立的,可是,在现实生活中能有几个合同是这样的?除非订立合同的双方“势均力敌”!否则,弱的一方只能是接受、同意!在租赁合同关系之中亦是如此,出租方提供的几乎都是格式合同,一个字都不能改动,甚至连一个标点符号都不能变。所以,若要租房子,一定要找一个好房东,这个房东可以是公司,也可以是个人。

2020年05月31日 16:54

租房小白如何找房,除了中介还有靠谱的平台吗?

当你踏入租客门户世界成为其中一员的时候,作为一位小白租客你是不是很惊慌,又很迷茫?如果你的答案是——是,那请你耐下心看一下这篇简短的小文章吧。对于广大租客来说,寻求到一个自己最满意的结果才是最终的租房目的。身为一名正在租房的小编,无需耗尽心思猜测就能明白租客最需要的是什么。租客租房,求得是顺利找到一处自己满意的房源。或许你同我一样,在找房子时害怕被中介收取高额的中介费,担心无良平台提供虚假消息,又或者想要在最短的时间里找到房源。租客租房,对于每一位租客来说是生活中的一次体验。有完美的租房案例,也有残缺的案例。下面仅以一个失败的租客案例警示大家,求租要用自己心安的方式寻求房源,不要让生活伤害到自己。想到失败的租客案例,就想到了生活中有很多租客被中介欺骗,而离小编最近的就是高中朋友小王,她本人就是一位受害者。朋友小王,去年大学刚毕业一个人深夜坐着火车出发去深圳找工作,去之前在一个网上通过中介找到了房子。当小王到达目的地时,等待小王的不是网上约定好的拎包入住费用,而是比之前高了好多的中介加价费,加钱才可以带你去租房处。因她本人是一个女生加之又是晚上,只好多花了几百块最终达到自己的租房处。这是属于朋友小王的一次租房体验,被骗之后在朋友圈晒出了自身体验,目的是想告诫身边的朋友不要随便在网上找房子,有些中介根本不靠谱,同时发泄一下内心被骗后的难过感受。这个案例离我们很近,近到发生在我们身边。求租,本就是生活中一件很平常的事情,可是求租方式不对,带给租客的则是一种欺骗式体验。对于刚成为租客身份和即将成为租客身份的你,一次好的求租过程是租客内心最强烈的要求也是求租者的初愿。在此,小编想以身作则给大家推荐一个安全、方便、省时的租客平台。毕竟,生活中关于租客网站那么多,分享出的求租信息也很繁杂,想要最好的租客体验就要有好的租客平台,而租客网则是租客必不可少的一个。无论是电脑版本的官网还是手机版本的APP形式,都秉持着简单易操作的原则,保证让用户用的放心。在无需考虑各种求租攻略的情况下,即可在租客网里面找到让租客最满意的房源,解决租客满世界寻求房源的难题。这里不会有上述要收取高价中介费用的中介,也没有张贴各种虚假的房源消息,更没有无关求租以外的不良信息。租客网于租客而言就是一个性价比十足的生活平台。租客求租,选租客网可谓是一个明智的决择。让没有体验租房过程的你,在使用租客网时,不再害怕被欺骗、焦虑担忧找不到合适的房源,也不用因要选择哪款平台的纠结。当然,当你成为租客网用户后,你就可以享受属于租客网平台提供的福利。租客网里的“租客惠”功能,让每个用户在顺利解决房源问题之后,可以体验该平台在衣食住行等方面提供的生活帮助,丰富用户的租客生活。同时,租客也可以加入全民合伙人的团队中,在租房的同时将租房消息利用“分享”将消息传播出去,给用户体验者带来碎片化时间的赚取佣金。租客网,满足租客们想要租房的生活需求,同时也规避了租客租房时遇到的租房风险。用租客网,来一场舒心的租房体验。

2020年05月23日 14:23