京东6.18大促主会场领京享红包更优惠

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 4773|回复: 0

学Java还是 Python?你要先明白他们的区别

[复制链接]

31

主题

0

回帖

10

积分

新手上路

积分
10
发表于 2019-4-26 06:16:15 | 显示全部楼层 |阅读模式 来自 中国

* H( E- m4 P, I2 r% X# y' L* `7 }" n; B
$ _3 W  L  S8 l- ?( `3 x) s' h8 |9 f
本文对Java和Python的比较会帮助你更好地了解这两种编程语言,并帮助你找到更符合目标的那一种。3 _" w) C" ~2 e9 z0 ~4 a3 ^5 I
Java和Python因其通用性、高效性和自动化能力,成为了目前市场上最热门的两种编程语言。- o' Q1 {( p4 `0 H/ `  A: Q
这篇比较Java和Python的博客会通过以下顺序,让你全面了解这两种语言:
* j- a* G, a. S0 a/ c/ B* `# f5 P先回溯一下这两种语言的起源,看看Python和Java有没有相似之处。
! c+ E: z: @' H7 ~# K+ r+ l5 DJava是一款面向对象的语言,其语法类似于很多程序员都熟知的C/C++语法。
: X# Y. ~$ M5 ^Java是动态链接的,允许下载和运行新代码,但不可以动态输入。
2 L) [: ]0 \- x  g7 R) QPython是两种语言中较老的一种,1991年由其发明者Guidovan Rossum首次发布。它是一种可读、高效、功能强大的高级语言,具有自动管理内存功能。
, p- Q" {6 t: t8 E; `那么,Python和Java之间有什么区别呢?两种语言既有相似之处,又有不同之处,这使得在两种语言中选择一种更为困难。程序员最常问的问题就是,Python是不是比Java好。$ O0 q. `- d1 W0 m1 G
我们会用到以下因素来比较Java和Python:7 {2 [5 M+ n) j. e
0 C; f3 b  Y8 ]5 a
$ r* w) a) G: v. ?  C" `
, Y& }$ n% d7 B  ]& d$ [3 Q  k1 K" O
该表显示Python似乎略胜一筹,但还需深入地了解比较因素的细节,并找出哪种编程语言更好。
! z) Y7 p+ U- I: T速度/ X* c! ?# _: D5 j5 A- e. U# T# E
1 E& `# g5 e6 C3 J8 h- T1 I
6 K' V+ @- d* `

- F' h: E/ B4 P$ A5 ]% K8 v9 w& f3 }8 Q1 [
就速度而言,Java是一种编译型语言,因此速度比Python更快。Java执行代码所需的时间更少。- o3 w# T; z. B, Z& x5 Y+ c; p  Z
9 b( k$ _1 q7 a- c& x1 W" ^0 I# L

8 ^/ h3 t% y4 j( k) Y" |3 V4 z$ `' n3 S$ o
python是一种解释型语言,它决定了运行时的数据类型,这使得它相对较慢。
4 m7 B$ S, l3 C( Q( d- {4 ?遗留系统问题
7 p# T9 A/ g: c+ O* K! ~
2 I3 H- D! U; p: Y5 E
3 `) u: K! K3 x, w* [  C) c' c6 Z
" U) o9 I- c2 L9 O9 v! H- {
Java在企业中的历史和略微冗长的编码风格使得Java的遗留系统通常比Python更庞大且更为繁杂。
. J! w0 c* e6 Z. t( ]
7 s$ H0 a1 ?+ K( w! s" [8 u
% i- r% \$ F& F: }, M  ^- P. m' |4 w/ x- A: U0 `5 a
Python具有较少的遗留问题,因此组织发现脚本较难复制和粘贴代码,这使Python略微优于其他语言。
: Y5 _; O! V' r- M$ ?! C( X, I当我们谈论这两种语言时,难免会有另一个困惑,那就是Java和Python哪个更简单。因此,让我们看看在两种语言中编写代码时所需的行数。+ `4 r6 x& M7 ]2 N9 d4 w# n  y
代码
/ {& [- G/ X8 ]- \
# j$ Y2 L0 }" J/ ^) R/ ]! `" u; `) [; M; L& M6 E/ o* }& G$ n( h% |( l/ s
6 q, A+ h( I8 T; X8 Q/ l; X
4 @0 h- C) g4 @% Q1 \# S3 ]0 |4 x
与Python相比,Java非常冗长。从Java中读取文件需要10行代码。1 c! H, s4 M# M1 W% l
  n6 Q* A* M+ \
% @! Q5 b1 k/ @' |
' ~+ E3 H& |6 {: F6 o3 y! L9 W1 u
而Python仅需要2行。这使得Python成为更优选的语言。$ |  Q& S8 o( k+ |6 j' @( V  e
实用敏捷性
( E/ Y4 l! g3 |- {1 l# o; ~9 U0 Z
# p" A" Z) \  h* n0 q0 a9 f7 u$ m" ?  Y( D7 a; m

5 U% [! w4 X. f! M& z
# p" p$ A! C2 v' u5 b9 }4 ^由于Java的静态类型系统和集成开发环境(IDE)在开发中的普及,它比Python拥有更一致的重构支持。Java在移动和Web应用中更受欢迎。
; A, w* ]2 _' I% K. |' }1 a$ E$ ^$ E5 _* D3 |6 [6 j+ A! m& w

4 P" D1 e/ z3 W. t0 E) M
) i& P1 i% I( ~# J7 z" Y5 s8 sPython在智能领域广受欢迎,被认为是研究机器学习、人工智能、物联网等领域的最佳语言。
2 e' `" R0 I" @趋势( v" z2 i, ^' _+ _: V- z

% C$ f$ X9 Y) H& l% }6 t1 m: g7 T  e% U. q
印度; @% A+ x% i3 L7 m; E$ [& a

' d1 m$ P) m2 p' I
& S% z' i; s. h' Z  s' i虽然不像以前那样热门,但Java实际上仍然是最流行的编程语言。另一方面,Python的发展,特别是在发达的高收入国家,简直是突飞猛进。其原因包括开发者生产力、语言灵活性、库的支持、社区支持和易学性。5 f( Y/ j2 K" `% A& h
薪水
9 |1 ]* D5 U% @0 k/ s9 _
+ j; `! o6 ^# }- S
; `6 D; G. ^7 K: B( g" L3 y: g. V2 w! B0 z  Z% E
( K) h/ ?% U, s$ ?9 _& D0 D
) Q: _: W+ z* R9 ^# D; Y; H
大多数人都想知道Python是否会在近期取代Java。对于新晋工程师而言,考虑到近期Python的需求增长,Python会略胜一筹。如今,工程师的工作主要与自动化和人工智能有关,而这些工作都倾向于使用Python而不是Java,这就是为什么我们可以看到图表中的变化。
" @" s% y8 z( x- ], H
2 E% l: F7 m% k) b) J
9 r7 ~9 o$ a% a2 x2 x1 _0 Z) M, m2 ]9 A, P+ J9 |
但是对于经验丰富的工程师而言,随着时间的推移还是Java占据了主导地位。毕竟在Python流行之前,大家用的都是Java。有经验的工程师会觉得,相比新学一种语言,还是继续使用以前的语言会比较方便。7 q) o& Z4 p  x! @8 X$ T
基本区别
+ y" G0 [; F# }- S) F" t7 U: t
6 V! n& ~; y8 }* H" H+ g! a* k+ U7 H2 d4 t& p
- I5 i( \% B) A/ K$ T

; \4 B* H8 w9 ]5 i所以,在大多数情况下,Python都会比Java更有优势一些。
$ i$ n7 v: h& c8 a) n( J. _1 @1 b  X& Z4 K
5 {0 @7 F1 _& U/ P
来源:https://www.toutiao.com/a6682989700724032003/
  V0 s' V% X/ Y0 [; X0 @免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×

帖子地址: 

梦想之都-俊月星空 优酷自频道欢迎您 http://i.youku.com/zhaojun917
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|梦想之都-俊月星空 ( 粤ICP备18056059号 )|网站地图

GMT+8, 2026-5-16 22:07 , Processed in 0.057563 second(s), 27 queries .

Powered by Mxzdjyxk! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表