Python、Java的书都挺多,网上的Java教程也是种类繁多,写的好也有,写的不怎么样的也有,总的来说,容易让人晕菜,越看越头大,微微老师想创新一下,将Java和Python对比学习,毕竟两者可谓当前最主流的后端开发语言,并且是人工智能与大数据方向最重要的两门语言,若能一石二鸟,两者兼学兼得,岂不一大美事,悦哉?
先说句抱歉的话,微微老师学识有限,知识浅薄,只是为了让大家理解,有时候换个角度看问题,反而有意想不到的收获。
一、Java和Python起步学什么
Java运行需要安装JDK,这点与Python有点像,但又有很大不同,Java介于编译型语言和解释型语言之间。编译型语言如C、C++,代码是直接编译成机器码执行,但是不同的平台(x86、ARM等)CPU的指令集不同,因此,需要编译出每一种平台的对应机器码。Python是解释型语言,不存在这个问题,可以由解释器直接加载源码然后运行,代价是运行效率较低。而Java是将代码编译成一种“字节码”,它类似于抽象的CPU指令,然后,针对不同平台编写虚拟机,不同平台的虚拟机负责加载字节码并执行,这样就实现了“一次编写,到处运行”的效果。当然,这是针对Java开发者而言。对于虚拟机,需要为每个平台分别开发。为了保证不同平台、不同公司开发的虚拟机都能正确执行Java字节码,SUN公司制定了一系列的Java虚拟机规范。
随着Java的发展,SUN给Java又分出了三个不同版本:
Java SE:Standard Edition
Java EE:Enterprise Edition
Java ME:Micro Edition
这三者之间是啥关系呢?
┌───────────────────────────┐
│Java EE │
│ ┌────────────────────┐ │
│ │Java SE │ │
│ │ ┌─────────────┐ │ │
│ │ │ Java ME │ │ │
│ │ └─────────────┘ │ │
│ └────────────────────┘ │
└───────────────────────────┘
因此推荐大家的Java学习路线图如下:
首先要学习Java SE,掌握Java语言本身、Java核心开发技术以及Java标准库的使用;
如果继续学习Java EE,那么Spring框架、数据库开发、分布式架构就是需要学习的;
如果要学习大数据开发,那么Hadoop、Spark、Flink这些大数据平台就是需要学习的,他们都基于Java或Scala开发;
如果想要学习移动开发,那么就深入Android平台,掌握Android App开发。
无论怎么选择,Java SE都是Java的核心技术!无论怎么选择,学习Java都建议首先学会Java SE!本文及之后的教程关于Java部分的就是基于的Java SE内容介绍。欧了,介绍完Java接下来我们来说说Python,有个段子说比如,完成同一个任务,C语言要写1000行代码,Java只需要写100行,而Python可能只要20行;再有段子说,人生苦短,就用Python;此外还有什么学Python保发量,等等不胜枚举。
总之,Python是一种相当高级的语言。大家也许会问,代码少多好啊,那我们还用得着学C吗,还需要学Java吗?代码少的代价是运行速度慢,C程序运行1秒钟,Java程序可能需要2秒,而Python程序可能就需要10秒。
那是不是越低级的程序越难学,越高级的程序越简单?表面上来说,是的,但是,在非常高的抽象计算中,高级的Python程序设计也是非常难学的,所以,高级程序语言不等于简单。但是,对于初学者和完成普通任务,Python语言是非常简单易用的,就连Google都在大规模使用Python。
二、Java和Python的第一个程序
现在大家开始编写Java的第一个程序,几乎所有编程语言的第一个程序都是在屏幕上打印"Hello,world!"。
下面大家可以分别用Java和Python实现这一功能,对比二者区别。
Java代码:
public class Main {
public static void main(String[] args) {
System.out.println("Hello, world!");
}
}
Java代码运行结果:
Python代码:
print("Hello, world!")
Python代码运行结果:
三、Java变量
在Java语言中,所有的变量在使用前必须声明。如下代码示例:
Java代码:
public class Main {
public static void main(String[] args) {
int x = 100; // 定义int类型变量x,并赋予初始值100
System.out.println(x); // 打印该变量的值
}
}
Java代码运行结果:
四、Python变量i
在Python语言中,所有的变量使用前无须声明,编译器自动识别变量类型。如下代码示例:
Python代码:
x = 100
print(x)
Python代码运行结果:
五、Java运算
Java代码:
public class Main {
public static void main(String[] args) {
int x = 100; // 定义int类型变量x,并赋予初始值100
System.out.println(x); // 打印该变量的值,观察是否为100
x = 200; // 重新赋值为200
System.out.println(x); // 打印该变量的值,观察是否为200
}
}
Java代码运行结果:
六、Python运算
Python代码:
x = 100
print(x)
x = 200
print(x)
发表评论 取消回复