首页

文章

JAVA和Python有啥区别?

发布网友 发布时间:2022-03-03 15:33

我来回答

8个回答

热心网友 时间:2022-03-03 17:02

最本质区别就是一个是脚本可以解释执行,一个是需要编译通过才能执行。
相同点就是,它们都会通过一个中间语言来执行,而且都会优化。不过java的优化强大,效率高。

另外python的面向对象与java的不完全一样。python更表面化,java的严格多了。

编程风格也有本质区别。python喜欢随意,喜欢用小写,喜欢用缩略语的变量。这些在java中都是违反规范的。

python是C语言库支持的。更接近函数式编程。同时与操作系统底层也通过C,直接打交道。java这方面就弱多。java更适合做网站,做分布式计算。所以科学上,网络上用得多。

python覆盖面广。从教育,科研,运维管理,到一般的网站全都有。主要侧重在运维管理方面。本来它创建时就为了管理用的。java当时创建就是为了跨平台的移植,为了嵌入系统。事实上嵌入系统方面,java不成功。
语法方面python不需要声明就可以使用变量。但是要求对齐要很整齐。java不要求整齐,但是变量一定要声明定义后才能用。
python中大量使用类似指针的用法,很灵活。而java这方面基本上用面向对象,以及类的操作代替。
python里可以直接自己执行动态的代码。而java实现loadclass就麻烦些。没有这么灵活。
收集网络,仅供参考

热心网友 时间:2022-03-03 18:20

作者:find goo
链接:https://www.hu.com/question/20491745/answer/100741761
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

一、python虚拟机没有java强,java虚拟机是java的核心,python的核心是可以很方便地使用c语言函数或c++库。
二、python是全动态性的,可以在运行时自己修改自己的代码,java只能通过变通方法实现。python的变量是动态的,而java的变量是静态的,需要事先声明,所以java ide的代码提示功能优于python ide。
三,python的产生几十年了,几十年前面向过程是主流,所以用python有好多程序用的是面向过程设计方法,很多概念从c语言过来的,class在python中是后加入的,而java是为了实现没有指针的c++(当年com组件用的引用记数,java用的虚拟机),主要采用面向对象的设计方法,很多概念是oop的概念。面向过程,相对简洁直观,但容易设计出面条程序,面向对象,相对抽象优雅,但容易过度抽象。
四,在实际使用的python入门简单,但要学会用python干活,需要再学习python各种库,pyhton的强大在于库,为什么python的库强大,原因是python的库可以用python,c语言,c++等设计,再提供给python使用,所以无论gpu运行,神经网络,智能算法,数据分析,图像处理,科学计算,各式各样的库在等着你用。而java没有python那么多的开源库,很多库是商业公司内部使用,或发布出来只是一个jar包,看不到原始代码。python虚拟机因为编译性没有java的支持的好(或者说故意这么设计的),一般直接使用源码(linux),或源码简单打个包(如pyexe)。
五、python有很多虚拟机实现,如cython,Pyston,pypy,jython, IronPython等等,适合用于业务语言,或插件语言,或面向领域语言,而java因为虚拟机巨大,很少用于插件语言,发布也不方便。
六、java主要用于商业逻辑强的领域,如商城系统,erp,oa,金融,保险等传统数据库事务领域,通过类似ssh框架事务代码,对商业数据库,如oralce,db2,sql server等支持较好,软件工程理念较强,适合软件工程式的多人开发模式。python主要用于web数据分析,科学计算,金融分析,信号分析,图像算法,数学计算,统计分析,算法建模,服务器运维,自动化操作,快速开发理念强,适合快速开发团队或个人敏捷模式。
七、java的商业化公司支持多,如sap,oracle,ibm等,有商业化的容器,中间件,企业框架ejb。python的开源组织支持多,如qt,linux,google,很多开源程序都支持python, 如pyqt,redis,spark等。
八、python用途最多的是脚本,java用途最多的是web,pyhotn是胶水,可以把各类不相关的东西粘在一起用,java是基佬,可以通过软件工程组成几百个人的团队和你pk,商业化气息重。不过我认为还是python强大,因为可以方便调用c或c++的库,但软件工程和商业化运作没有java好,适合快捷开发。
九,关于钱。
如果你想写程序卖软件用java,可用上ibm服务器,上oracle数据库,上EMC存储,价格高,商业采购公司喜欢这种高大上。如果你要直接用程序生成金钱用python,python可以实现宽客金融,数据回测,炒股,炒期权,炒黄金,炒比特币,对冲套利,统计套利,有很多开源库,数据分析库,机器学习库可以参考。
十、java和python,都可以运行于linux操作系统,但很多linux可以原生支持python,java需要自行安装。java和python强于c#的原因大于支持linux,支持osx,支持unix,支持arm。java和python比c++受欢迎的原因在于不需要指针。
十一、对于移动互联网,python只能通过运行库运行于安卓或ios,java原生支持安卓开发,但不能用ios中。
十二、对于大数据,hadoop用java开的, spark用Scala开发,用python调用spark再分析更方便。

热心网友 时间:2022-03-03 19:55

JAVA和Python的区别如下:

Java具有简单性、面向对象、分布式、健壮性、安全性、平*立与可移植性、多线程、动态性等特点。Java可以编写桌面应用程序、Web应用程序、分布式系统和嵌入式系统应用程序等。
Python解释器易于扩展,可以使用C语言或C++(或者其他可以通过C调用的语言)扩展新的功能和数据类型。Python也可用于可定制化软件中的扩展程序语言。Python丰富的标准库,提供了适用于各个主要系统平台的源码或机器码。
想要学习此类技术推荐选择达内教育,该机构独创TTS8.0教学系统,1v1督学,跟踪式学习,有疑问随时沟通。线上线下交互学习,对标企业人才标准,制定专业学习计划,囊括主流热点技术。凭借雄厚的技术研发实力、过硬的教学质量、成熟的就业服务团队,为学员提供强大的职业竞争力,在用人企业中树立了良好的口碑。

想了解更多有关IT技术的相关信息,推荐咨询达内教育。该机构是引领行业的职业教育公司,致力于面向IT互联网行业培养人才,达内大型T专场招聘会每年定期举行,为学员搭建快捷高效的双选绿色通道,在提升他们的面试能力、积累面试经验同时也帮助不同技术方向的达内学员快速就业!

热心网友 时间:2022-03-03 21:46

1、Java运行效率高于Python,Java的资料相对多一些,尤其是中文资料;
2、Java版本比较稳定,Python2和3不兼容导致大量类库失效;
3、Java开发偏向于软件工程和团队,Python更适合小型的开发;
4、Python比Java编程语言简单;
5、Java语法定义较为复杂,Python语法简洁优美;
6、Java偏向于商业开发,Python适合于数据分析;

热心网友 时间:2022-03-03 23:54

java是静态类型编程语言
python是动态类型
java被市场认可和广泛使用三十余年了,比较成熟
python近几年刚被市场认可和大量推广,热度比较高
python的学习周期短于java

热心网友 时间:2022-03-04 02:35

作为世界上使用范围最广的编程语言,Java难免总是被拿来跟Python比较,而且,在编程语言的各种对战中,Python 与Java也是打得最热烈的。
1. Java必须显式声明变量名,而动态类型的Python不需要声明变量。
2. Python是一种语法简单的功能强大的语言,能够通过编写脚本就提供优秀的解决方案,并能够快捷地部署在各个领域。
3. Java可以创建跨平台的应用程序,而Python几乎与当前所有操作系统兼容。
4. 对初学者来说,Python比Java更容易上手,而且代码易读性强。
5. 速度,Java和Python都不适合高性能计算,但在性能上,Java还是略胜一筹,Java的效率优势体现在虚拟机执行,程序执行时,JVM可以将字节码转换为本地机器码,这种即时(JIT)编译让Java的性能略胜Python,但是Python针对性能进行微调,以提高Python效率!
Java和Python都是富有活力的编程语言,这两种语言与开放性相关联,所以公司,团队和程序员在做出决定时最好保持开放的态度。至于,程序员到底该选择哪种编程语言,可以结合上述五点自行比较,但更多的程序员似乎更倾向于Python,毕竟Python在人工智能、数据分析、云计算等领域具有更好的发展前景!

热心网友 时间:2022-03-04 05:33

Python 适合的领域:
1. Web网站和各种网络服务;
2. 系统工具和脚本;
3. 作为“胶水”语言把其他语言开发的模块包装起来方便使用;

Python 和其他语言对比:
1. C 编译为机器码,运行速度非常快,代码量非常多;
2. Java 编译为字节码,运行速度快,代码量多;
3. Python解释执行,运行速度慢,代码量少;
Python基本语法:
和java不同,不需要方法加 { } 定义决定一个代码块,Python对代码缩进控制严格,基本可以通过缩进决定代码块。
关于变量:
1. 定义:无需声明类型,且必须赋值;
2. 使用范围:在变量前加两个下划线如:__content = “haha”代表该类变量私有,不加则默认公有;
关于列表:
1. 列表:有序且可以修改,用[ ] 来定义,和java数组类似;
2. 元组:无序且无法修改,用 ( ) 来定义,只有一个元素时,需要在元素后面加逗号 “,”;
3. 字典:用 { } 来定义,和java的Map类似,需要键值对且键不可重复,值可以是任何类型,一个字典的所有值可以类型都不同;
关于面向对象:
1. 定义方法用def +方法名,且类里面的每个方法必须含有入参且必须是第一个入参self;
2. def__init__(self): 是一个类的构造方法或初始化方法;
3. 和java相比调用方法无需new;
4. 实现继承例:class Child ( Parent ): Child类继承Parent类,可继承多个类,在Parent后用“,”隔开;

热心网友 时间:2022-03-04 08:48

这种比较没啥意义吧, 哪哪都不一样。
如何分别真金和仿金首饰 怎样区分真金和仿金首饰呢 小学生新年晚会主持人的串词!!(不要太多)急 大大后天就需要了!!!_百度... 周年晚会策划公司 奥格瑞玛传送门大厅在哪 奥格瑞玛传送门大厅怎么走 锻炼颈椎的几个动作 水多久能结冰 冰能在多长时间内形成 请问水低于0度会结冰吗? 如何防止脱发严重 嘴唇上有黑印用蜜蜡和棉线去除了胡须 软柿子的热量 孕妇可以吃软柿子吗不是西红柿 脆柿子和软柿子的区别 脆柿子好还是软柿子好 软柿子可以多吃吗 “鱼悬洁白振清风”的出处是哪里 用大自然的声音评课好吗? 妇产科博士找超声科工作容易吗 怎能把微信6.2.0版本换回6.1.2版 微信群6.2.4怎么增加人数上限 微信6.2.2如何备份手机通讯录 电脑桌面图标不能放大? 有什么好用的识图软件 识图认人哪个软件最好 手机识图软件什么软件能识别图片位置 小米手机自动锁屏时间怎么修改 小米手机屏幕锁定时间设置教程 能举起100斤算大力吗 中医美容专业是什么 中医美容证有什么用 单声道音频什么意思(开启单声道音频有什么好处) 单声道音频是什么,有什么用处? 户口还未迁移到婆家 娘家户口怎么就没了呢 我结婚没有迁户口,现在娘家也没有怎么办 没领证生的孩子一般会判给谁 没领证生的孩子会判给谁 信用卡卡种有哪些 找一首古风歌曲 男声 低配电脑装w10还是w7流畅 电脑配置低装win7还是win10好 低配电脑适合装WIN7系统还是WIN10系统? ...500s-15isk这个联想笔记本的内存条尺寸是什么型号的有没有知道的... 越快越好.怎样减肥.而且胸部不缩水 请问徐闻县海安长途汽车客运站客服是多少? 过了平台期还会瘦吗 悦耳的意思悦耳的解释 重庆师范大学应用心理学专业的权威性如何? 打印机laserjetm1136mfp怎样设置无线打印 经典电影赏析之1:《精武英雄》 爆米花用的什么玉米 糯玉米哪个好 有机糯玉米的营养价值如何? 四大直辖市换帅原因 四大直辖市换帅为啥 2021年安徽省初级会计证报考条件包括啥? 2021全国初级会计考试报名条件是啥? 考初级会计师需要什么条件 python中/与//的区别是什么? 方框里面对号怎么打 打字时怎么打对号 初级会计报名需要什么条件? 如何打对号? 考初级会计证需要什么条件,初中毕业的可以吗 苹果11第二张卡装哪里? 报考初级会计证需要什么条件 苹果11怎么装两个卡 报考初级会计证需要什么条件? 两台苹果手机靠近迁移需要网络吗 江苏2021年初级会计报考条件需要什么学历呢? 考初级会计证需要什么条件 0基础学习python怎么入门呢? 初级会计师需要什么资格才可以考 怎样让WORD背景颜色变回白色? word这个背景怎么变成白色的? python中= 和==的区别 立夏吃什么,各地立夏习俗鉴赏 如何开启ipad的分屏功能? 立夏吃什么盘点各地立夏饮食习俗 ipad分屏功能怎么开启2020 立夏吃什么 各地立夏饮食习俗 ipad8分屏功能怎么开启 立夏吃什么,各地习俗大盘点 ipad怎么开分屏功能 立夏吃什么,看看各地习俗 ipad分屏怎么打开 5月5日立夏吃什么各地立夏饮食习俗 ipad air4分屏功能怎么开启 ipad怎么分屏? 各地立夏饮食习俗有哪些 ipad pro2020分屏功能怎么开启 南北方的立夏节,都会吃什么食物来庆祝? ipad分屏功能怎么设置 立夏节的习俗吃什么 ipad air3分屏功能怎么开启
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com