Java基础学习笔记

Java基础学习笔记(第一篇

Java语言的特点:

  • 开源: 开源不是开放编译器的源代码,而是写了一个软件, 然后把这个软件的源代码发布到网上, 让大家都可以学习,改进,就是开源。要符合一定的规范,比如GPL 等。
  • 简单、高效
  • 面向对象:java是一种面向对象的语言。也就是说,这种程序设计,把现实中的所有的问题都当做一个个对象来解决,每个对象都有其独立的属性和方法,每个对象之间具有一定的联系,在面向对象设计编程中,不需要考虑对象的实现细节,每个对象都有自己的任务和功能。比如说汽车是一个对象,飞机也是一个对象;汽车具有后备箱、方向盘和发动机等属性,飞机有机翼、操作台等等属性,如果程序想实现能够根据汽车状态输出相应语句,比如前进、后退,那么实现这个功能的具体代码成为方法,对应的飞机也可以有自己的方法比如起飞、下降等。飞机和汽车都属于交通工具,他们某些地方具有共性就是有联系的意思,交通工具包含汽车飞机等对象。。。三言两语不知道你能明白多少,建议还是看书好好去理解了,比如《Thinking in java》,《java核心基础技术卷I II》。
  • 平台无关性:从微观来说编译出来的是字节码!去到哪个平台都能用,只要有那个平台的JDK就可以运行!
  • 交互式特性:
  • 多线程机制:多线程机制能够使应用程序在同一时间并执行多项任务,而且相应的同步机制可以保证不同线程能够正确的共享数据。使用多线程,可以带来更好的交互能力和实时行为。
  • 动态的内存管理机制:Java在很多方面比C和C++更能适应发展的环境,可以动态的调整库中的方法和增加变量,而客户端不需要进行任何更改。在Java中进行动态调整是非常简单和直接的
  • 安全性:Java语言删除了类似C语言中的指针和内存释放等语法,有效的避免非法操作内存,Java程序代码要经过代码校验、指针校验等很多测试步骤才能运行,所以未经允许Java程序不可能出现损害系统平台的行为,而且使用Java可以编写防病毒和防修改的系统

Java语言的体系结构

  • JAVASE(Java Standard Edition)标准版:也就是Java基础包含核心的类
  • JAVAEE(Java Enterprise Edition)企业版:企业版包含JavaSE还有Servlet、JSP
  • JAVAME(微缩版)已被安卓取代

Java语言的运行机制

Java开发者编写.java文件(源代码),通过编译工具将Java文件编译为.class文件,通过不同平台的JVM运行,.class文件为操作系统

JDK、JRE、JVM之间的关系

JDK是java开发工具包,在其安装目录下面有六个文件夹、一些描述文件、一个src压缩文件。bin、include、lib、 jre这四个文件夹起作用,demo、sample是一些例子。可以看出来JDK包含JRE,而JRE包含JVM。

bin:最主要的是编译器(javac.exe)

include:java和JVM交互用的头文件

lib:类库

jre:java运行环境(注意:这里的bin、lib文件夹和jre里的bin、lib是不同的)

总的来说JDK是用于java程序的开发,而jre则是只能运行class而没有编译的功能。

JDK是提供给Java开发人员使用的,其中包含了java的开发工具,也包括了JRE。所以安装了JDK,就不用在单独安装JRE了。 其中的开发工具包括编译工具(javac.exe)打包工具(jar.exe)等

JRE是指java运行环境。光有JVM还不能成class的执行,因为在解释class的时候JVM需要调用解释所需要的类库lib。在JDK的安装目录里你可以找到jre目录,里面有两个文件夹bin和lib,在这里可以认为bin里的就是jvm,lib中则是jvm工作所需要的类库,而jvm和 lib和起来就称为jre。所以,在你写完java程序编译成.class之后,你可以把这个.class文件和jre一起打包发给朋友,这样你的朋友就可以运行你写程序了。

包括Java虚拟机(JVM Java Virtual Machine)和Java程序所需的核心类库等,

如果想要运行一个开发好的Java程序,计算机中只需要安装JRE即可。

JVM就是我们常说的java虚拟机,它是整个java实现跨平台的最核心的部分,所有的java程序会首先被编译为.class的类文件,这种类文件可以在虚拟机上执行,也就是说class并不直接与机器的操作系统相对应,而是经过虚拟机间接与操作系统交互,由虚拟机将程序解释给本地系统执行。

可以理解为是一个虚拟出来的计算机,具备着计算机的基本运算方式,它主要负责将java程序生成的字节码文件解释成具体系统平台上的机器指令。让具体平台如window运行这些Java程序。

简单而言:使用JDK开发完成的java程序,交给JRE去运行。

  • 7
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值