零基础学习Java 01

简介: 零基础学习Java 01

java语言特性

  • 简单性:相对于其他编程语言而言,java较为简单,例如:java不再支持多继承,C++是支持多继承的,多继承比较复杂,C++中有指针,java中屏蔽了指针的概念,避免了绝大部分的指针越界和内存泄露的问题,这里说明一下,java语言低层是用C++实现的,并不是C语言。
  • 面向对象:java是纯面向对象的,更符合人的思维模式,易于理解。
  • 健壮性:java的健壮性与自动垃圾回收机制有关,自动垃圾回收机制简称GC机制,java语言运行过程中产生的垃圾是自动回收的,不需要程序员关心。
  • 可移植性:java程序可以做到一次编译,到处运行。在Windows操作系统上运行的java程序,不做任何修改,可以直接放到Linux操作系统上运行,这个被称为java程序的可移植性(跨平台)。java的跨平台性是通过JVM(java虚拟机)实现的,java代码不直接与底层操作系统打交道,而是通过JVM这个中间介质间接与底层操作系统交互,JVM屏蔽了各操作系统之间的差异,不同版本的操作系统就有不同版本的JVM,只有在JVM这个环境下的java程序才能运行。

JDK、JRE、JVM

  • JDK:java开发工具包
  • JRE:java运行时环境
  • JVM:java虚拟机
  • 说明:
    1、JDK和JRE都可以单独安装,若不需要开发Java程序,只需要运行的话,那么,只用安装JRE即可。
    2、JVM不能单独安装。

 

字符编码

为了让计算机可以表示现实世界中的文字,需要人提前制定好“文字”和“二进制”之间的对照关系,这种对照转换关系被称为“字符编码”。

  • ASCII码:采用一个字节编码,主要针对英文编码
  • GBK:主要是简体汉字编码
  • Unicode:统一了全世界的所有文字编码,采用这三种方式实现(UTF-8、UTF-16、UTF-32)

说明:

1、Java采用Unicode编码方式

2、在实际开发中,一般使用UTF-8编码方式实现

 

数据类型

  • Java程序中最基本的单位是类
  • Java中变量赋值时必须类型对应,否则不兼容,编译不过,可用强转
  • Java中局部变量不赋值不能使用
  • 说明:整数默认为int,浮点数默认为double,布尔类型默认为false

 

数据类型默认转换

byte、short、char-->int-->long-->float-->double

:为什么long比float所占字节长度更大却是long转换为float呢?

因为它们底层的存储结构不同,float表示的数据范围要比long的范围更大。

标识符命名方法

  • 小驼峰命名法:标识符是由一个单词组成时首字母小写,多个单词组成时第一个单词首字母小写,其余单词首字母大写。
  • 大驼峰命名法:标识符是由一个单词组成时首字母大写,多个单词组成时每一个单词首字母大写。
    说明:小驼峰命名法用于方法、变量的命名,大驼峰命名法用于类的命名。
相关文章
|
2月前
|
XML Java 编译器
Java学习十六—掌握注解:让编程更简单
Java 注解(Annotation)是一种特殊的语法结构,可以在代码中嵌入元数据。它们不直接影响代码的运行,但可以通过工具和框架提供额外的信息,帮助在编译、部署或运行时进行处理。
97 43
Java学习十六—掌握注解:让编程更简单
|
1月前
|
Java 大数据 API
14天Java基础学习——第1天:Java入门和环境搭建
本文介绍了Java的基础知识,包括Java的简介、历史和应用领域。详细讲解了如何安装JDK并配置环境变量,以及如何使用IntelliJ IDEA创建和运行Java项目。通过示例代码“HelloWorld.java”,展示了从编写到运行的全过程。适合初学者快速入门Java编程。
|
2月前
|
存储 SQL 小程序
JVM知识体系学习五:Java Runtime Data Area and JVM Instruction (java运行时数据区域和java指令(大约200多条,这里就将一些简单的指令和学习))
这篇文章详细介绍了Java虚拟机(JVM)的运行时数据区域和JVM指令集,包括程序计数器、虚拟机栈、本地方法栈、直接内存、方法区和堆,以及栈帧的组成部分和执行流程。
39 2
JVM知识体系学习五:Java Runtime Data Area and JVM Instruction (java运行时数据区域和java指令(大约200多条,这里就将一些简单的指令和学习))
|
1月前
|
JavaScript Java 项目管理
Java毕设学习 基于SpringBoot + Vue 的医院管理系统 持续给大家寻找Java毕设学习项目(附源码)
基于SpringBoot + Vue的医院管理系统,涵盖医院、患者、挂号、药物、检查、病床、排班管理和数据分析等功能。开发工具为IDEA和HBuilder X,环境需配置jdk8、Node.js14、MySQL8。文末提供源码下载链接。
|
2月前
|
小程序 Oracle Java
JVM知识体系学习一:JVM了解基础、java编译后class文件的类结构详解,class分析工具 javap 和 jclasslib 的使用
这篇文章是关于JVM基础知识的介绍,包括JVM的跨平台和跨语言特性、Class文件格式的详细解析,以及如何使用javap和jclasslib工具来分析Class文件。
58 0
JVM知识体系学习一:JVM了解基础、java编译后class文件的类结构详解,class分析工具 javap 和 jclasslib 的使用
|
2月前
|
前端开发 Java 应用服务中间件
Javaweb学习
【10月更文挑战第1天】Javaweb学习
37 2
|
2月前
|
存储 缓存 Java
【用Java学习数据结构系列】HashMap与TreeMap的区别,以及Map与Set的关系
【用Java学习数据结构系列】HashMap与TreeMap的区别,以及Map与Set的关系
43 1
|
2月前
|
存储 搜索推荐 算法
【用Java学习数据结构系列】七大排序要悄咪咪的学(直接插入,希尔,归并,选择,堆排,冒泡,快排)以及计数排序(非比较排序)
【用Java学习数据结构系列】七大排序要悄咪咪的学(直接插入,希尔,归并,选择,堆排,冒泡,快排)以及计数排序(非比较排序)
29 1
|
2月前
|
存储 算法 Java
带你学习java的数组军队列
带你学习java的数组军队列
39 0
|
2月前
|
Java 大数据 开发工具
java学习——环境准备(1)
java学习——环境准备(1)
43 0
下一篇
DataWorks