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

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



相关推荐

天禧运营客户案例:绝了,这种靴子居然穿的越久越时髦?欧阳娜娜宠它宠上天!

说起鞋柜里的“百搭万金油”,马丁靴真的能位列前三!看看LV2020Resort大秀就知道,这家伙爆火了70多年依旧没有要“退休”的意思:图片来源:网络“行走的穿搭王”宋妍霏说,如果你今天烦恼穿什么,那就用马丁靴来搭配。图片来源:网络作为马丁靴的忠实粉丝欧阳娜娜,曾开玩笑说:“如果家里失火的话,除了大提琴,一定会带走的就是马丁靴。”图片来源:网络看起来很拽酷的马丁靴到底百搭到什么程度呢?赵丽颖拿它来搭清纯小白裙,这种看似胡来的组合竟也意外地好看。可以搭牛仔裤、铅笔裤、阔腿裤、裙子,搭T恤、毛衣、大衣...图片来源:网络甚至强大到可以拯救“渔网袜”等一系列时尚雷品图片来源:网络总之买双马丁靴,你的衣柜就没有它搭不上的衣服。四季皆可盘!图片来源:网络但是马丁千千万你买来后可能要面临的问题就是:磨脚❗吃腿❗显胖❗图片来源:小红书买靴子无非我们就想要:百搭显腿长❗舒服好走路❗可以一双可以穿很久❗是时候给你们拿出我私藏的8孔马丁靴了~点击上方小程序卡片即可购买很多人都说靴子“孔越少,显得腿越长”!却没多少人知道,8孔才是“黄金比例”高度!你看,8孔修饰腿型的能力,就比6孔强,显得腿更直:(腿略粗,记得选八孔!)tips:上腿效果因人而异,仅供参考为了进一步显腿长,ZHR马丁靴将内增高融合在鞋型设计里。外观上和一般马丁靴一样只有2-3cm,可是内藏的整个跟高足足有6.5cm!这样会更照顾到我们的舒适性,还显腿瘦拉长小腿线条。tips:上腿效果因人而异,仅供参考一起来看看我们的试穿实拍图:两位model光脚丫,左:小林比较矮一点。小林穿上ZHR马丁靴,小然穿上自己的运动鞋,身高差距一下子就被拉出来了:tips:上腿效果因人而异,仅供参考让你瞬间从159cm长到166cm,小马丁大喊:“我可以”tips:上腿效果因人而异,仅供参考我们能感受到的舒适,是因为背后有一个愿意慢下来做好每一双鞋的品牌。一双不用胶水的靴子,一双需要十次打版,十五道工序的靴子!纯火融贴底,不存在开胶和撕裂的问题,没异味!很好穿!纯手工用机器套楦头,区别于鼓圆呆板的鞋头。靴型做工不输上千块的Dr.Martens分毫,整体版型非常灵动,鞋头秀气,更适合脚背略厚的亚洲脚型,穿起来好看、舒服、包容度还高。左:常见马丁靴vs右:ZHR马丁靴纯马克线缝制,连线都不愿意将就。半透明的果冻色,是好鞋底的证明。凹凸有致、四叶花瓣的底纹,防滑、不易磨损,有实力陪伴你跋山涉水。点击上方小程序卡片即可购买优质鞋子直观表现就是:不用劣质材料!ZHR马丁靴用的是牛二层皮,细看牛皮肌理很清晰,有微微的光泽感,盲猜就是上千块的质感。“牛二层皮”也叫超纤皮,用力折也不会起印子。上手就可以感觉到的柔软,扛得住上脚弯曲无裂痕!这双靴子我穿了一年,今年拿出来还像新的一样,鞋面上的折痕都没有。“牛二层皮”耐脏好打理也是老生常谈的优点了。沾到污渍了一擦就干净,下雨天穿它,或者去泥泞的山野徒步都不怕。鞋里的「海波丽鞋垫」也非常软,用力按下去会有反弹感。海波丽鞋垫真的很优秀,像Nike,Adidas用的都是它~吸汗、抗菌力很赞,再加上牛二层皮的透气力,整双鞋子像装了个肺一样会呼吸。所以不会有大家担心的穿靴子“捂脚闷汗、汗多发臭”的问题。穿在脚上走起路来,脚趾不挤,脚背不憋,脚掌还有微微的回弹感~据官方统计:ZHR马丁靴2019年线上营业额已突破30亿,线下体验店已开设103家。在竞争激烈的女鞋市场,分别跻身天猫、唯品会女鞋类目Top3!现在日发货量高达3万双,有3条质检流水线的架构,还得到《爱情公寓》里的胡一菲——娄艺潇的青睐为其代言。@ZHR检测员“如果把鞋子的质量从差到优,比喻成一至十环,在我这里就是枪枪十环。对每一双鞋子的质量负责,是我的态度”@ZHR鞋版设计师每一笔弧度的调整,每一种材质的取舍,都会影响鞋子的性格。我们要更关注脚的感受,它值得被温柔相待。@ZHR店长“更新鞋子也是更新自己,你搭不出的无数种可能,让我用专业为你实现,陪你发现属于自己的美,是我的态度”如果你本身已经很高,不需要增高款(4+2.5cm);我们也为你准备了普通款(4cm),大家可以按照自己的实际情况选择:而且还有三个月内包退、包换、包修的售后服务,方方面面都替你们考虑好~真的别等到了10月份后,回归正价就都是大几百上千的价格了。官方提供:3包服务【购买方式】ZHR·时尚马丁靴中和娇俏女人味防滑耐磨柔软透气八孔设计增高显瘦原价:159元/双粉丝优享:149元/双戳图购买↓点击上方小程序卡片即可购买

2020年09月28日 11:20

租客网:深圳房价太贵,连分手都不敢提

今年是来深圳的第三个年头,也是失恋的第一年。年前,女友回了老家。她说,她和我在一起太累了。她说,她要回家相亲,她要结婚。她说,你先别恋爱了,免了辜负别人。她说,你的理想看起来和深圳一样美好,可注定实现不了。走的前一晚,我们聊了很多,从大学的初见谈到最后的离别。可能都是预料之中,没有想象中的声嘶力竭,倒像许久未见的好友一般聊天。其实我们在一开始就早已经选择了两条不同的道路,道路曲曲折折通往了不同的彼岸。她喜欢安稳,而我注定漂泊不定。一夜未睡,胡子拉碴地送她去高铁站。道别时,我们面带微笑,她说,请你在上海,好好活下去。看她转身没入人群中,我笑着哭了。在深圳的三年里,我们看到了深圳的繁华,也看到了深圳破落的一角。我们租过拥挤嘈杂的城中村,图个租金便宜,这里什么人都有,环境岂是一个脏乱差可以描述的?在这种混乱地方,公德心、道德心都被弱化,很糟糕的体验。两年租下来,人都被烦的有些精神崩溃。后来我们搬进了群租房,这里稍微会安静些,至少不会早上五六点就有大爷大妈的吆喝声。这里有公用的厨房,每天也能吃上热乎的饭菜,当时以为这种两个人温馨的日子可以持续很久。可不到一年,房东就开始漫天要价,原本两千的房租涨到三千,然后涨到四千,这还算是可以接受的范围内。击垮我们的最后一根稻草是房东说,以后还会涨。再后来,女友觉得这样的租房生活太苦,漂泊在城市很没有安全感。而我在大城市里生存,积蓄无几,连承诺都不敢许。互相放逐的结果是,岁月与我都辜负了她,而她也离开了我。就在上个月,房东通知我说,房子要涨价,再涨五百。想想我的工资,不由笑了。交完房租,怕是要喝西北风。这种黑心房东简直可怕,一涨再涨的房子,不要也罢!于是四下打听房屋出租消息。朋友听说后道,你是不是傻?租客网这么火,你不去租客网租房子?我恍然大悟,打开手机注册了租客网账号,简单的在地图上画了个圈,就找到了好几个想要的房子,租客网的地图找房功能真是有点神奇!租客网还能在网上在线看房,不放心的我还预约了房东实地看房。租客网不愧是真房源,所见即所得!租金三千,位置极佳,当时就和房东在网上签订了合同。接下来的一年中,我可以安心住在这儿。一年后的我,还可以通过租客网来找到合适的房源。搬家后,房间看不到她的物品,少了她的气息。一个人躺在这空荡荡的房间里,不由得有些孤独。打开微信,有她的消息,是一张照片,她的穿白婚纱的照片。我爱她,也爱这个城市。如果我早点发现租客网,她就不会受这么多的苦,如今站在她身旁的,应该是我。愿你不要错过!

2020年04月30日 19:07

强制启用https链接,firfox做出新规定,Chrome跟随

眼下网络安全越来越被重视,浏览器巨头们在不约而同的推进着网络安全,各具体将逐步淘汰不安全的http链接,紧接着Firfox将在76版本中引入HTTPS-only模式,同时这两家浏览器巨头还将默认禁止ftp协议。目前现状,你的网站没有https将会处处受阻。1、Firfox76Nightly版本中引入HTTPS-only模式这一模式的加入,表示Firfox将开启进入仅允许连接到HTTPS站点的时刻。如果一切进行顺利的话,Firefox接下来可能会在稳定版中面向所有用户推出该项功能。HTTPS-only模式启用后,Firefox会像以前一样加载HTTPS站点和资源。当检测到HTTP站点或资源时,浏览器将会使用HTTPS进行访问。如果成功,站点或资源就会被成功加载;反之,如果无法升级,那么站点或资源则将被阻止,从而可能导致站点无法访问或部分加载。升级时,Firefox还会向用户显示一条内容为“SecureConnectionFailed”错误的消息。我们来看看他们都做了些什么吧1、Firfox76Nightly版本中引入HTTPS-only模式这一模式的加入,表示Firfox将开启进入仅允许连接到HTTPS站点的时刻。如果一切进行顺利的话,Firefox接下来可能会在稳定版中面向所有用户推出该项功能。HTTPS-only模式启用后,Firefox会像以前一样加载HTTPS站点和资源。当检测到HTTP站点或资源时,浏览器将会使用HTTPS进行访问。对于运行Firefox76或更高版本的Firefox用户来说,可以通过以下方式在浏览器中激活新的HTTPS-only模式:在浏览器的地址栏中加载about:config使用顶部的搜索字段搜索dom.security.https_only_mode:将首选项设置为TRUE可在Firefox中启用HTTPS-only连接;将首选项设置为FALSE以允许所有连接(默认)。2、“https://”和“www”将在Chrome83中重返地址栏去年8月,谷歌开始在Chrome76版本中的URL栏隐藏了“www”子域和“https://”标识符,目前为止,它们都仍是默认隐藏状态。谷歌又在Chrome83Canary版本的Omnibox上下文菜单中提供了一个内置选项,可通过启用它来显示网页完整URL。具体操作方式如下:使用Chrome83Canary或更高版本;前往chrome://flags页面;加载chrome://flags/#omnibox-context-menu-show-full-urls;选择启用,然后重新启动浏览器;重新启动Chrome后,访问任意网站,在Omnibox中选择域,然后右键单击并选中“ShowURL”选项,最后单击网页上的任何其他区域以恢复URL的默认状态。3、Chrome下载防护升级逐步淘汰不安全的非HTTPS链接谷歌安全博客发文称,为了增强下载防护体验,Chrome浏览器将开始阻止非“安全超文本传输协议”的混合内容下载。作为去年宣布的一项计划的延续,Chrome将开始阻止“安全页面”上的所有“非安全子资源”的接触。鉴于不安全的文件下载会威胁到用户的安全与隐私,此事确实值得推进。4、Firfox77和Chrome将默认禁用FTP协议Chrome76开始不再支持FTP代理,Chrome80已经禁用FTP。Firefox61之后也不再网页中加载FTP资源,必须单独下载。2018年的时候,Firefox就加入了禁用FTP的选项,但一直默认关闭,而计划在今年6月份发布的Firefox77稳定版,将会首次开启默认禁用FTP。

2020年03月27日 00:48