========================================================================================================
学java对很多人来说并不陌生,听的最多的就是学了JAVASE,JAVAEE,再学框架就大概可以工作了。现实中往往很多人学完以后去面试时候,发现基础并不牢固,为何?我总结了一下自己的经历,发现在写代码过程中,很多人主要照着书本写出代码能运行出来结果了,就直接认为自己已经会了,实际没有。有多少人能像我们高中那样拼命去研究知识那样去理解代码?在我看来,学习java最重要是要理解what(这东西是什么),why(为什么要用它),where(在哪用它),how(怎么用)。所以接下来,我都是以这样的思想来和大家交流,从最基础的知识讲起。如果有啥出错的,欢迎大家前来批评。本人虚心接纳。
========================================================================================================
一.JAVA的简介
1.what(java是什么):
(1).官方语言:Java是一门面向对象,可跨平台的编程语言,不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承、指针等概念,功能强大和简单易用。
(2).通俗来说:java也是一门编程语言。那它和C语言和C++有啥不一样呢?
区别:a. java和c语言最大的区别是,java面向对象,c语言面向过程。那这是肯定有人问,啥是面向对象,啥是面向过程?举个例子,分别用c语言和java来描述一个人要跑步这件事,对于面向过程的c语言呢,它在意的是跑步这个过程,跑步相当于一个函数,执行完这个函数就完了,不会在意人怎样;对于面向对象的java呢,它在意的是人这个对象,跑步只是人这个对象的一个动作,跑步虽然也相当于一个函数,不过呢,首先得创建人这个对象·,由对象来获取这个函数。
b. 另外一个不同很重要也很容易被误会,那就是可跨平台。很多人都以为java是可跨平台,c++或者c就不是,其实严格来说,c,c++更是可跨平台的语言,java反而不太算,为啥?
Java是解释型语言,在不同操作系统(window,Linux)上运行Java时,由与该操作系统上对应的Java虚拟机(JVM)对其翻译,逐条代码解释为该操作系统识别的东西。啥意思?举个例子,我现在要看录像,那总得有个条件环境吧,也就是说必须要有DVD或者VCD播放器,java语言运行也是,必须要有个条件环境,这就是Java虚拟机(JVM)。所以Java跨平台的前提是它所要跨的平台上事先装有对应的Java虚拟机。在满足这个前提的基础上Java编译出的.class文件才能实现所谓的跨平台。(注意:Java虚拟机并不是跨平台的,不同的操作系统有不同的Java虚拟机);
c/c++是编译型语言,编译型语言的代码在某平台编译后的文件可以在该平台下直接运行,不依赖于虚拟机,因此运行速度要高于解释型语言。事实上,只要在不同的操作系统装有支持c/c++的编译器,c/c++同样可以在该操作系统上运行。
总的来说,Java编译生成的文件通过JVM执行,支持Java的操作系统都是装有相应的JVM的。c/c++编译成的文件可以直接在操作系统上运行,是针对不同的操作系统的。Java是编译文件级的跨平台,c/c++是源代码级的跨平台。所以说,c,c++更是可跨平台的语言(因为不依赖虚拟机),java反而不太算(依赖虚拟机,不同系统虚拟机还不一样)。
(3).java主要由三种技术架构组成:
a.JAVASE:就是Java的标准平台,JavaSE下,开发出来的,就是桌面程序,也就是在电脑上运行的。
b.JAVAEE:就是Java的企业平台,JavaEE开发的,就是网站,我们平时看到的各种网站,都可以用Java开发。
c.JAVAME:是移动平台的,但理解就是,JavaME平台,开发的就是手机程序,移动设备程序等。
2.HOW(怎么用)
(1).运行java所需的环境:
正如前面的i例子,我现在要看录像,那总得有个条件环境吧,也就是说必须要有DVD或者VCD播放器,java语言运行也是,必须要有个条件环境,由以下两部分组成。
a. JDK:Java Development Kit,顾名思义是java开发工具包,是程序员使用java语言编写java程序所需的开发工具包,是提供给程序员使用的。JDK包含了JRE,同时还包含了编译java源码的编译器javac
b. JRE: Java Runtime Environment,顾名思义是java运行时环境,包含了java虚拟机(JVM),java基础类库(rt.jar等)。是使用java语言编写的程序运行所需要的软件环境,是提供给想运行java程序的用户使用的。
简单来说,如果你需要运行java程序,只需安装JRE就可以了。如果你需要编写java程序,需要安装JDK,但JDK包括JRE,因此不必单独下载。
具体在环境变量里面配置路径这里就不具体详说了,可以上网搜寻,教程相当多。
(2)运行java所需的工具,也就是软件:
a.最原始的就是用记事本编写程序
b.Eclipse
c.idea
(3)如果满足了以上两个条件,那么就可以就行代码的编译和运行了。那么,这个过程是怎么进行的?下面我就用最原始方式来演示一下:
要知道java是分两部分的:一个是编译,一个是运行。在此之前,先要介绍一下cmd的javac命令和java命令:
javac:负责的是编译的部分,当执行javac时,会启动java的编译器程序。对指定扩展名的.java文件进行编译。 生成了jvm可以识别的字节码文件。也就是class文件,
也就是java的运行程序。
java:负责运行的部分.会启动jvm.加载运行时所需的类库,并对class文件进行执行.
步骤:
a.首先在E盘建立一个名为czwshow文件夹,在文件夹里面新建一个名为Hello的记事本
b.在记事本里面编写一个简单的程序,main函数是主函数,也就是指明程序要从这里跑起来。
c.将Hello.txt文件名改为Hello.java,确认更改,因为我们要编译java为后缀的文件
d.打开cmd
e.输入命令e: 并回车,这是用来找到所在盘。
f.接着输入命令菜单cd czwshow回车,这是找到所在文件夹
g.接着输入javac Hello.java回车,你会发现,文件夹里面多了一个后缀为class文件,这就是编译,生成了jvm可以识别的字节码文件。
h.接着输入java Hello回车,就会启动jvm.加载运行时所需的类库,并对class文件进行执行,就可以看到输出了。
3. 总结:
1.java运行一定要配置环境,熟悉jdk和jre的区别
2.熟悉java文件编译和运行的流程,当使用了软件后,cmd运行方式这些往往会被丢弃,然而越深入学习还是要回到这个。
===========================================================================================================
用心查阅,有心分享,分享之际,互相指教,受益你我,何乐不为?
===========================================================================================================