没有合适的资源?快使用搜索试试~ 我知道了~
资源详情
资源评论
资源推荐
公众号:JAVA架构进阶之路
公众号:JAVA架构进阶之路
公众号:JAVA架构进阶之路
JDX
JDX
JDX
JDX
JDX
JDX
JDX
JDX
JDX
JDX
JDX
JDX
JDX
JDX
Java相关
基础&进阶篇
1.什么是Java
Java是一门面向对象的高级编程语言,不仅吸收了C++语言的各种优点,比如继承了C++语言面向对象的
技术核心。还摒弃了C++里难以理解的多继承、指针等概念,,同时也增加了垃圾回收机制,释放掉不
被使用的内存空间,解决了管理内存空间的烦恼。
因此Java语言具有功能强大和简单易用两个特征。Java语言作为静态面向对象编程语言的代表,极好地
实现了面向对象理论,允许程序员以优雅的思维方式进行复杂的编程 。
2. Java的特点有哪些
Java 语言是一种分布式的面向对象语言,具有面向对象、平台无关性、简单性、解释执行、多线程、安
全性等很多特点,下面针对这些特点进行逐一介绍。
1. 面向对象
公众号:JAVA架构进阶之路
公众号:JAVA架构进阶之路
公众号:JAVA架构进阶之路
JDX
JDX
JDX
JDX
JDX
JDX
JDX
JDX
JDX
JDX
JDX
JDX
JDX
JDX
Java 是一种面向对象的语言,它对对象中的类、对象、继承、封装、多态、接口、包等均有很好的支
持。为了简单起见,Java 只支持类之间的单继承,但是可以使用接口来实现多继承。使用 Java 语言开发
程序,需要采用面向对象的思想设计程序和编写代码。
2. 平台无关性
平台无关性的具体表现在于,Java 是“一次编写,到处运行(Write Once,Run any Where)”的语言,
因此采用 Java 语言编写的程序具有很好的可移植性,而保证这一点的正是 Java 的虚拟机机制。在引入
虚拟机之后,Java 语言在不同的平台上运行不需要重新编译。
Java 语言使用 Java 虚拟机机制屏蔽了具体平台的相关信息,使得 Java 语言编译的程序只需生成虚拟机
上的目标代码,就可以在多种平台上不加修改地运行。
3. 简单性
Java 语言的语法与 C 语言和 C++ 语言很相近,使得很多程序员学起来很容易。对 Java 来说,它舍弃了
很多 C++ 中难以理解的特性,如操作符的重载和多继承等,而且 Java 语言不使用指针,加入了垃圾回
收机制,解决了程序员需要管理内存的问题,使编程变得更加简单。
4. 解释执行
Java 程序在 Java 平台运行时会被编译成字节码文件,然后可以在有 Java 环境的操作系统上运行。在运
行文件时,Java 的解释器对这些字节码进行解释执行,执行过程中需要加入的类在连接阶段被载入到运
行环境中。
5. 多线程
Java 语言是多线程的,这也是 Java 语言的一大特性,它必须由 Thread 类和它的子类来创建。Java 支持
多个线程同时执行,并提供多线程之间的同步机制。任何一个线程都有自己的 run() 方法,要执行的方
法就写在 run() 方法体内。
6. 分布式
Java 语言支持 Internet 应用的开发,在 Java 的基本应用编程接口中就有一个网络应用编程接口,它提
供了网络应用编程的类库,包括 URL、URLConnection、Socket 等。Java 的 RIM 机制也是开发分布式
应用的重要手段。
7. 健壮性
Java 的强类型机制、异常处理、垃圾回收机制等都是 Java 健壮性的重要保证。对指针的丢弃是 Java 的
一大进步。另外,Java 的异常机制也是健壮性的一大体现。
8. 高性能
Java 的高性能主要是相对其他高级脚本语言来说的,随着 JIT(Just in Time)的发展,Java 的运行速度
也越来越高。
9. 安全性
Java 通常被用在网络环境中,为此,Java 提供了一个安全机制以防止恶意代码的攻击。除了 Java 语言
具有许多的安全特性以外,Java 还对通过网络下载的类增加一个安全防范机制,分配不同的名字空间以
防替代本地的同名类,并包含安全管理机制。
Java 语言的众多特性使其在众多的编程语言中占有较大的市场份额,Java 语言对对象的支持和强大的
API 使得编程工作变得更加容易和快捷,大大降低了程序的开发成本。Java 的“一次编写,到处执行”正是
它吸引众多商家和编程人员的一大优势。
公众号:JAVA架构进阶之路
公众号:JAVA架构进阶之路
公众号:JAVA架构进阶之路
JDX
JDX
JDX
JDX
JDX
JDX
JDX
JDX
JDX
JDX
JDX
JDX
JDX
JDX
3. JDK和JRE和JVM的区别
1. JDK
JDK(Java SE Development Kit),Java标准的开发包,提供了编译、运行Java程序所需要的各种工具
和资源,包括了Java编译器、Java运行时环境、以及常用的Java类库等。
2. JRE
JRE(Java Runtime Environment),Java运行时环境,用于解释执行Java的字节码文件。普通用户只
需要安装JRE来运行Java程序即可,而作为一名程序员必须安装JDK,来编译、调试程序。
3. JVM
JVM(Java Virtual Mechinal),Java虚拟机,是JRE的一部分。它是整个Java实现跨平台的核心,负责
解释执行字节码文件,是可运行Java字节码文件的虚拟计算机。所有平台上的JVM向编译器提供相同的
接口,而编译器只需要面向虚拟机,生成虚拟机能识别的代码,然后由虚拟机来解释执行。
当使用Java编译器编译Java程序时,生成的是与平台无关的字节码,这些字节码只面向JVM。也就是说
JVM是运行Java字节码的虚拟机。
不同平台的JVM是不同的,但是他们都提供了相同的接口。JVM是Java程序跨平台的关键部分,只要为不
同平台实现了相同的虚拟机,编译后的Java字节码就可以在该平台上运行。
为什么要采用字节码:
在 Java 中,JVM 可以理解的代码就叫做 字节码 (即Java源代码经过虚拟机编译器编译后扩展名为
.class 的文件),它不面向任何特定的处理器,只面向虚拟机。Java 语言通过字节码的方式,
在一定程度上解决了传统解释型语言执行效率低的问题,同时又保留了解释型语言可移植的特点。
所以 Java 程序运行时比较高效,而且,由于字节码并不针对一种特定的机器,因此,Java 程序无
须重新编译便可在多种不同操作系统的计算机上运行。
什么是跨平台:
所谓跨平台性,是指java语言编写的程序,一次编译后,可以在多个系统平台上运行。
实现原理:Java程序是通过java虚拟机在系统平台上运行的,只要该系统可以安装相应的java虚拟
机,该系统就可以运行java程序。
Java 程序从源代码到运行需要三步:
4. 总结
1. JDK 用于开发,JRE 用于运行java程序 ;如果只是运行Java程序,可以只安装JRE,无序安装JDK。
公众号:JAVA架构进阶之路
公众号:JAVA架构进阶之路
公众号:JAVA架构进阶之路
JDX
JDX
JDX
JDX
JDX
JDX
JDX
JDX
JDX
JDX
JDX
JDX
JDX
JDX
2. JDk包含JRE,JDK 和 JRE 中都包含 JVM。
3. JVM 是 Java 编程语言的核心并且具有平台独立性。
4. Oracle JDK 和 OpenJDK 的对比
Oracle JDK版本将每三年发布一次,而OpenJDK版本每三个月发布一次;
OpenJDK 是一个参考模型并且是完全开源的,而Oracle JDK是OpenJDK的一个实现,并不是完全
开源的;
Oracle JDK 比 OpenJDK 更稳定。OpenJDK和Oracle JDK的代码几乎相同,但Oracle JDK有更多的
类和一些错误修复。因此,如果您想开发企业/商业软件,我建议您选择Oracle JDK,因为它经过了
彻底的测试和稳定。某些情况下,有些人提到在使用OpenJDK 可能会遇到了许多应用程序崩溃的
问题,但是,只需切换到Oracle JDK就可以解决问题;
在响应性和JVM性能方面,Oracle JDK与OpenJDK相比提供了更好的性能;
Oracle JDK不会为即将发布的版本提供长期支持,用户每次都必须通过更新到最新版本获得支持来
获取最新版本;
Oracle JDK根据二进制代码许可协议获得许可,而OpenJDK根据GPL v2许可获得许可。
5. Java有哪些数据类型
Java中有 8 种基本数据类型,分别为:
6 种数字类型 (四个整数形,两个浮点型):byte、short、int、long、float、double
1 种字符类型:char
1 种布尔型:boolean。
byte:
byte 数据类型是8位、有符号的,以二进制补码表示的整数;
最小值是 -128(-2^7);
最大值是 127(2^7-1);
默认值是 0;
byte 类型用在大型数组中节约空间,主要代替整数,因为 byte 变量占用的空间只有 int 类型的四
分之一;
例子:byte a = 100,byte b = -50。
short:
short 数据类型是 16 位、有符号的以二进制补码表示的整数
最小值是 -32768(-2^15);
最大值是 32767(2^15 - 1);
Short 数据类型也可以像 byte 那样节省空间。一个short变量是int型变量所占空间的二分之一;
默认值是 0;
例子:short s = 1000,short r = -20000。
int:
int 数据类型是32位、有符号的以二进制补码表示的整数;
最小值是 -2,147,483,648(-2^31);
最大值是 2,147,483,647(2^31 - 1);
一般地整型变量默认为 int 类型;
默认值是 0 ;
公众号:JAVA架构进阶之路
公众号:JAVA架构进阶之路
公众号:JAVA架构进阶之路
JDX
JDX
JDX
JDX
JDX
JDX
JDX
JDX
JDX
JDX
JDX
JDX
JDX
JDX
剩余480页未读,继续阅读
尚振伟
- 粉丝: 181
- 资源: 12
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 计算机毕业设计:python+爬虫+cnki网站爬
- nyakumi-lewd-snack-3-4k_720p.7z.002
- 现在微信小程序能用的mqtt.min.js
- 基于MPC的非线性摆锤系统轨迹跟踪控制matlab仿真,包括程序中文注释,仿真操作步骤
- 基于MATLAB的ITS信道模型数值模拟仿真,包括程序中文注释,仿真操作步骤
- 基于Java、JavaScript、CSS的电子产品商城设计与实现源码
- 基于Vue 2的zjc项目设计源码,适用于赶项目需求
- 基于跨语言统一的C++头文件设计源码开发方案
- 基于MindSpore 1.3的T-GCNTemporal Graph Convolutional Network设计源码
- 基于Java的贝塞尔曲线绘制酷炫轮廓背景设计源码
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论0