鄂尔多斯 【切换城市】

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

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



相关推荐

外卖平台佣金抽成太高,商家该何去何从?

就在某火锅品牌和某餐饮品牌忙着为涨价道歉的时候,某外卖平台又因高佣金提成上了热搜榜,一时间成为各行各业高度讨论的话题。4月10日,广东省33家餐饮协会表示某外卖平台在举国抗疫期间,依旧坚持高额佣金以及排除公平竞争的独家条款,让一众餐饮商家不堪重负,要求某外卖平台取消“独家合作限制”等垄断条款,降低外卖服务佣金等。在疫情期间,餐饮行业受到的影响较大,虽然很多城市都已经完全恢复了堂食,但是店内的客流量甚至还不到疫情之前的一半。外卖的需求量骤然增长,让诸多商家绝望的同时也看到新的希望。平台抽成太高是这次广东餐饮企业集体起诉某外卖平台的主要理由。据调查,一般的商家平台抽成佣金大概在20%左右,长期与平台合作的商家在16%左右,而新开的餐饮店则高达26%左右。不得不说,26%的佣金抽成确实很高。一家普通的餐饮店一单的利润大概在30%左右,如果某外卖平台真的是抽成26%,也就代表着商家把一半以上的利润给了外卖平台。疫情期间餐饮业受到的打击十分大,某外卖平台的佣金不断的提高对商家来说更是雪上加霜。对商家而言,入驻外卖平台自然是为了获取更多的收入,可是大多数的收入都被平台抽走,自然就导致了此次某外卖平台被联名进行投诉的局面。关于外卖平台佣金设置的到底合不合理,作为消费者我们自然不太清楚,但可以肯定的是,随着佣金的上涨,商家自然也要提高产品的价格,最终为佣金上涨买单的还是我们这些消费者。对此次联名投诉的事件,某外卖平台也就此做出了回应。表示,并不是外界想象和传言的那样。2019年自己也才刚实现收支平衡,第四季度每单的利润仅2毛钱,真的暴利的话,也不会连续5年的时间都在亏损。并且八成的商家佣金是在10%-20%之间,并不是市场上所说的20%及以上。而且平台的大多数收入都用于了平台维护和配送方面。关于此次的回应是真是假,我们不知道。本以为疫情之后,会暴发一轮消费狂潮,如今看来,餐饮商家寄予厚望的报复性消费,能不能实现还是一个未知数。仔细一想,确实,2020年的一场疫情,很多人不是被裁员失业就是薪资减半停止了主要经济来源,但车贷、房贷、信用卡、花呗等又不能停,银行卡里本就因为疫情而捉襟见肘,再加上各大企业纷纷涨价,据消费者称,某火锅品牌一碗米饭七元,调料10元/人,消费者纵使想消费,面对高昂的价格,也要望而却步了。对商家来说,涨价并不是万能的,企业不断尝试消费者底线的后果就是像某火锅品牌和某连锁餐饮品牌一样,惹怒消费者,最后道歉,就算最终价格下降,但在消费者的心理,对品牌的好感度怕是要一落千丈了。面对外卖平台的高昂抽成和疫情之后消费骤减,作为商家该如何自救?身为消费者的我们又该如何实惠消费?不妨寻找更多的一个合作平台,比方说“租客惠”。“租客惠”是租客网旗下一个专门为商家和消费者带来优惠的项目。作为消费者,在吃喝玩乐之前,可以先在租客惠中领取优惠券再下单,即可享受最低价!没钱也可以过“潇洒”的生活。作为对商家,入驻“租客惠”,可以借助租客网平台的大流量,实现商家营业额的增长和知名度,最重要的是入驻租客惠没有高额的佣金抽成哦~疫情之后,企业想快速回笼资金可以理解,但是受到疫情影响的不仅仅是企业,每一个人都受到了不同的影响,希望企业在考虑自身的同时也考虑下作为消费者的我们。

2020年05月06日 10:46

月薪过万的深圳人,都租在哪里?

深圳外来人口几百万,租房,成了不可避免的事情。经常有人抱怨说,房租差点就占了工资的一半,住的还是普通的城中村单间,采光不好,条件简陋。或者为了省房租,他们搬到地铁线路的末端,比如固戍、后瑞、福永、桥头…每天通勤时间2小时以上。于是很多人心里都有了一个想法:等我月薪过万了、等我有钱了,一定要住离公司更近的、更好的房子。但那些月薪过万的深圳人,真的住得离公司更近、环境更好吗?01.房租4000,但来深5年,存款为0小G是典型的“精致穷”女孩,一直以来,她对居住环境都有自己的要求。哪怕是曾经城中村的小单间,她也会精心把屋子布置得更加美观舒适。随着工资的增长,她从西乡850元的小单间,到白石洲2000多的一房一厅,再到现在住到了南山4000元的一房一厅公寓中。房子的采光得好,她会给窗户装上文艺清新的窗帘,购置北欧风吧台,周末的时候邀请朋友,在窗边看看风景,喝点小酒,聊聊天。虽然平时没多少时间做饭,却也会购买整套的餐具,因为拍起照来特别好看。平时,她还经常和朋友约饭、到各地去玩,朋友圈的生活精彩多姿,看得让人甚是羡慕。不过追求高品质的生活,也有一点坏处:她来深5年,存款为0。本来“一人吃饱、全家不饿”,这样的情况也还是能接受。直到公司因为疫情连续减薪了两个月,经济压力一下子大起来,她才觉得需要“节约”一点了。不过即使工资变少,她也不想“居住环境降级”,她宁愿搬到更远一点的地方去,比如福永。两三千一房一厅,比现在便宜不少。02.房租750,因为月薪过万还是不够虽然深圳平均工资两年前就已经过万,但依然有很多人表示自己是“被平均”了,从我们的留言来看,一个月拿四到六千的,大有人在。于是很多人会觉得,月薪过万,在深圳已经很不错了。但对小伟来说,月薪过万,还是远远不够。因此,他选择住在龙华的城中村里,小小的一房一厅,房租才750。搬进来时是空房,家具都是自己买的。那边的房租不算高,但他有的朋友工资和他差不多,却选择住更好的,要1600多。以小伟的条件,其实也能承担起这样的房子,但是他觉得钱还是不够,“因为已经不是那个一人吃饱全家不饿的年纪了。”他这样说。92年出生的他,父母慢慢老去,不再工作,没什么收入,小病小痛开始多了起来;他有女朋友,虽然没结婚,但也要考虑一下未来的生活了…房租虽不多,但其他消费也不可避免,请朋友吃饭喝酒、和女朋友约会、买衣服等,一点一点的就花没了。所以他觉得,在深圳月薪过万,还是远远不够。他表示,如果钱再多点,他也想住得更好。来深圳三四年了,他也一直在寻找更好的工作机会,每次通过跳槽,他的工资都会有所上涨,而他的目标,是希望以后的收入能够更高,存多点钱,不然在深圳,也就没意义了。03.月薪过万,其实也住不了多好其实月薪过万,大多数人住得并没有想象中的那么好、那么贵。如果想通勤时间短一点,只能花多点钱住得离公司近点,但花三四千,住的地方也并没有特别好。所以很多人宁愿选择远一点的地方,用更少的钱,住更好的房子。只是,要牺牲一下通勤时间。住在五和的X先生和太太,住着不到3000的复式单间,每天上下班都要花一个小时。房子稍微有点小,但布置得十分温馨文艺。住在上塘的小白,一个人租了1600的一房一厅,养了两只猫,还有大飘窗,可以看到美丽的夕阳。但是他上班得走一公里多才能到地铁站,而且坐4号线,还要在会展中心换乘到车公庙,你懂得…当然,如果是工资过万,而且是在离市区远一点的地方上班,倒是可以过得十分惬意。住在大运的健身教练雷子,一个人住1150的单间,步行七八分钟就可以上班。住在龙华的阿阳,和女朋友同居,房租人均1000,一房一厅,公交不到20分钟就可以到公司。以前小编觉得,月薪过万,就可以选择离公司近一点的地方住,每天可以睡多一会、早点回家,但现在发现当初还是太单纯了。看了那么多月薪过万的深圳人住的房子,其实可以看到,大部分人和我们月薪几千住的环境也并没有差多少,也是1号线、4号线、5号线...的末端。在西乡、龙华等一些离地铁站一公里多的城中村,甚至有七八百的房子。那里的房子既可以满足自己对居住环境的较高要求,也不会让房租占了工资那么大的比例。毕竟在南山、罗湖、福田等公司的附近,单间都要三四千起步,就算月薪过万,也难以承受。在深圳,每个人都有自己的生活方式。依然有人月薪一万多,选择住三四千的公寓,过着精致小资的生活,每天过得很快活。也有人月薪过万,房租却只花1000-2000,把房子当成睡觉的地方。比起住的好,他们更愿意存多点钱。房子是租来的,生活是自己的,能让自己开心才是最重要的。住的开心,这钱就花得值;住的没有那么好,但存到钱了,也是开心的。而对于我们大多数人来说,哪怕是1000多的单间,只要用心去布置,也可以变成自己理想中的住所的样子,不是吗?

2020年04月27日 09:41

美军刚秀完肌肉就溜回本土,16年来首次撤走关岛所有轰炸机

美国“动力”网站的“战区”频道以及《星条旗报》网站一条有关美军在亚太部署调整的文章20日在互联网上引发高度关注。5架B-52H轰炸机16日在没有轮换机队的情况下飞离关岛安德森空军基地,结束美国空军自2004年以来从未间断执行的“轰炸机持续存在任务”。“战区”表示,追踪飞机动向的推特账号“飞行守望”显示5架B-52H飞离关岛返回常驻地北达科他州迈诺特空军基地。据报道,作为“轰炸机持续存在任务”的一部分,从2004年开始,美空军开始在关岛安德森空军基地部署B-52、B-1B超音速轰炸机和B-2A隐形轰炸机,通常每次任务驻扎6个月,部署轰炸机4-6架。顾名思义,这项任务的目的是确保至少一个远程重型轰炸机任务部队始终在该战略基地驻扎,以“应对太平洋地区的潜在突发事件”。中国专家表示,由于需要保持轰炸机的持续存在,以往在两支部队轮换时,往往会出现两型轰炸机共驻安德森基地的场景,也偶有其他轰炸机部队因临时任务驻扎,出现美国“轰炸机三巨头”同驻关岛的情况。这批B-52H轰炸机撤离前的13日,还与6架KC-135R空中加油机、1架RQ-4B“全球鹰”无人机、1架海军MQ-4C“海神”无人机和1架MH-60S直升机摆出“大象漫步”秀肌肉。尽管当时颇多解读认为是针对中国,但现在来看,似乎更像是在拍“纪念照”。此次美国撤走关岛的B-52轰炸机,正值新冠疫情严重的“罗斯福”号核动力航母停靠关岛,舰员在当地隔离、治疗。是否疫情阻断了轰炸机部队的部署呢?一位中国专家对记者表示,当前疫情严重的“罗斯福”号航母停靠关岛,大部分官兵已下船隔离,这给当地的保障力量带来压力,也很不利于关岛本地的疫情防控。而B-52H轰炸机任务期限已到,回本土部署将会减少保障压力。目前美军方仍禁止海外人员机动,在这种情况下撤回本土,足见美军的急切心理。同时,美军可能为了减少流动、不做大范围部署调整,没派出新部队轮换,也是情理之中。另一个因素是,美军轰炸机部署策略也在调整。据“战区”报道,美国战略司令部发言人凯特·阿塔纳索夫在声明中表示,根据国防战略,美国已转变方式,以便使战略轰炸机在需要时从更广泛的海外地点向印太地区挺进,同时这些轰炸机具有更大的作战弹性。而这些轰炸机的常驻地设在美国本土。此外,美国空军本月初表示,他们有意把轰炸机部署到关岛的任务周期缩短。美军整体上也越来越多地采用一种称为“动态部队运用”的概念,降低重大作战部署的可预测性,以便对潜在对手保持优势。这也可以证明美国有能力在短时间内向全世界投送力量,而不会给敌方太多预警时间。外媒担心B-52H轰炸机撤离关岛会削弱美国对亚太的威慑能力。中国专家表示,美国空军轰炸机不会不来亚太,在疫情好转之后,美空军轰炸机重返关岛基地只是时间问题。美国战略司令部发言人声称,美国战略轰炸机将“继续按照我们选择的时机和节奏在包括关岛在内的印太地区实施行动”。专家表示,对于亚洲国家来说,今后美军轰炸机威胁性可能会更多样化。以前美国在关岛的轰炸机部署方式比较固定,可对其保持监视。而美国执行新的“动态部队运用”政策后,美轰炸机可能会在空中加油机的配合下从更多方向进入东亚,看得见的威慑降低,看不见的威胁增加了,而后者可能更为难防。这就对相关国家建立覆盖面更全、探测距离更远的对空预警系统提出更高要求。

2020年04月21日 20:13