java概述-001

1、Java开发步骤:

1)编写java源代码	
2)编译成class文件
3)运行
第一步:程序员编写java程序
第二步:jdk将java程序编译成JVM能识别的class字节码文件(class文件是不是二进制文件呢?不是,是十六进制文件)
第三步:JVM将十六进制字节码文件编译成底层操作系统能够识别的二进制机器码

实际操作:
通过notepad写一个java文件
在这里插入图片描述
在文件所在位置输入cmd,打开命令窗口
在这里插入图片描述
在这里插入图片描述
将java源代码编译成java文件 输入命令:javac HelloWorld.java
生成.class字节码文件
在这里插入图片描述
.class文件是16进制的
在这里插入图片描述
运行字节码文件,输入命令:java HelloWorld
在这里插入图片描述
小知识点:
1、配置环境变量的目的是什么?
相当于配置个环境变量,能让操作系统识别指令。
jdk是安装在操作系统上的一个服务,就需要让操作系统能够识别这个服务:
1)在系统默认路径中找到服务的执行文件
2)通过配置的环境变量找到服务的可执行文件
其中1)的优先级大于2)
2、JDK与JRE的区别?
Java development kit:java开发工具包,包含JRE
Java runtime environment:java运行环境

2、JVM虚拟机概述(面试必考点)

2.1、跨平台

​ 一套java代码可以运行在不同的操作系统,如Windows、Mac、Linux

2.2、JVM可以分为5个部分:

  • 类加载器(Class Loader):加载字节码文件到内存
  • 运行时数据区(Runtime Data Area):JVM核心内存空间的结构模型
    • 又包括方法区、虚拟机栈、本地方法栈、堆、程序计数器
  • 执行引擎(Execution Engine):对JVM指令进行解析,翻译成机器码,提交给操作系统
  • 本地库接口(Native Interface):供Java调用的融合了不同开发语言的原生库
  • 本地方法库(Native Libraries):Java本地方法的具体实现

2.2.1运行时数据区

方法区

存储加载的类信息、常量、静态变量,方法区是一种规范,永久代是方法区的一种实现,元空间也是方法区的一种实现,1.8之后使用元空间替代永久代。

永久代和元空间都是JVM内存中的一块区域

本地方法栈

执行本地方法,什么是本地方法?

Java是基于应用层的高级编程语言,无法访问底层操作系统,就需要使用其他语言来完成,比如C++。

本地方法的使用原理:

1、在java程序中声明native修饰的方法,只有方法定义,没有方法实现,将java程序编译成字节码文件。

2、用javah编译字节码文件,生成一个.h文件。

3、编写一个C++,.cpp文件,实现.h文件中的方法。

4、将.cpp文件编译成动态链接库文件.dll

5、使用System.loadLibrary()加载动态链接库文件.dll

常见的本地方法:

​ getClass() //获取运行时类

​ hashCode() //获取对象的哈希值

​ wait() //让正在访问当前资源的线程暂停

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值