Java的特点与加载--Java笔记

Java的特点与加载


一、Java是堪称完全面向对象的。面向对象更容易让人理解,人类通常是以对象的方式认知世界的。采用面向对象的方式可以让复杂问题简单化。

1、健壮性
主要是因为Java中有一种机制:
自动垃圾回收机制(GC机制)
Java语言是健壮的,相对于c语言来说,C语言没有Java健壮
Java不容易导致内存泄露
c++或者C语言使用不当时容易导致内存泄露

JVM(c++语言写的虚拟机)负者调度GC机制,程序员不需要干涉。

2、Java支持多线程并发机制
支持多个线程同时并发执行,极大提高了程序执行效率
3、可移植性、跨平台
Java语言只要编写一次,就可以在不同的平台(操作系统)上运行,得益于JVM虚拟机
JVM:JAVA虚拟机,使得Java程序实际上并不直接和操作系统打交道。(针对不同的操作系统使用不同的JVM虚拟机)

在这里插入图片描述
在这里插入图片描述
4、简单性
等等

二、
JDK、JRE、JVM三者的关系?
	JDK(Java Development Kit): Java开发工具箱
	JRE(Java Runtime Environment):Java运行时环境
	JVM(Java Virtual Machine): Java虚拟机

在这里插入图片描述
JDK包括JRE ,JRE包括JVM
JVM是不能独立安装的
JRE和JDK都是可以独立安装
安装JDK的时候:JRE就自动安装了,同时JRE内部的JVM也就自动安装了

为什么安装JDK时会自带一个JRE?
	因为Java程序员开发完程序后,要测试这个程序,让程序运行起来就需要运行环境(JRE)。

三、Java的加载与执行
在这里插入图片描述

	注意:Java程序员直接编写的Java代码(普通文本)是无法被JVM识别的。这种普通文本必须经过一个过程,将这个“普通文本代码”变成“字节码文件”,JVM能够识别字节码文件。这个过程被称为:“编译”。
	Java源代码是不能直接执行的。
	注意:一个Java文件是可以生成多个字节码文件的
			xxx.java 源文件经过编译后生成了A.class、B.class、C.class等字节码文件,那么我们成A是一个类,B是一个类,C是一个类、A、B、C是类的名字。
		.java 	源文件
		.class	字节码文件
	
		Javac	编译
		Java	运行
	1.编译阶段和运行阶段可以在不同的操作系统上完成吗?
		如:在Windows上编译,编译之后生成了“字节码”,
			将字节码放到Linux上运行。-----完全可以。因为Java是跨平台的,一次编写到处运行
			
	2.Java源代码在编译后可以删除吗?只留下字节码可以执行吗?
		可以执行,源代码不参与程序的执行过程。
		但是不建议删除源代码,因为程序的执行可能不一定与我们期望的那样。这时候就需要重新修改源代码重新编译。
		
	3.字节码文件是二进制文件吗?
		字节码文件(Java中是16进制文件),是经过编译器预处理过得一种文件,是Java的执行文件存在形式,他本身是二进制文件,但是不可以被系统直接执行,而是需要虚拟机的解释执行
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值