Java学习第一天
**
·Java语言的特点
特点一:
完全面向对象,两个基本概念:类、对象
特点二:
健壮性吸收了c/c++语言的优点,但去掉了其影响程序健壮性的部分。如:指针、内存的申请与释放等
特点三:
跨平台性:通过java语言编写的应用程序在不同的操作系统平台上都可以运行。一次编译,处处运行
**
·Java两大核心机制
Java虚拟机(Java Virtual Machine)和垃圾收集机制(Garbage Collection)
**
·Java的垃圾回收
垃圾回收:
将不再使用的内存空间进行回收
c/c++垃圾回收机制的区别:
- 在c/c++等语言中,由程序员负责回收无用内存。
- Java不需要程序员负责回收无用的内存;它提供一种系统级线性跟踪存储空间的分配情况。并在JVM空闲时,检查并释放那些可被释放的存储空间
- 垃圾回收在java程序运行过程中自动进行,程序员无法精确控制和干预
**
·JDK、JRE和JVM
- JDK:
Java Development Kit ( Java开发工具包):包含了 java 的开发工具,也包括了JRE。所以安装了JDK,就不用在单独安装JRE了
- JRE:
Java Runtime Environment (Java运行环境) :包括Java虚拟机(JVM:Java Virtual Machine)和 Java 程序所需的核心类库等。(想要运行一个开发好的Java程序,计算机中只需要安装JRE即可)
- JVM:
是一个虚拟的计算机,具有指令集并使用不同的存储区域。负责执行指令,管理数据、内存、寄存器。JVM 用于运行 Java 应用程序。对于不同的平台,有不同的虚拟机。Java虚拟机机制屏蔽了底层运行平台的差别,实现了“一次编译,到处运行”。
-JDK、JRE和JVM的关系:
**
·Java关键字和标识符
- 关键字:
- 定义:被Java语言赋予了特殊含义,用做专门用途的字符串(单词)
- 特点:关键字中所有字母都为小写特点:关键字中所有字母都为小写
- 标识符:
- 定义:
- Java 对各种变量、方法和类等要素命名时使用的字符序列称为标识符
- 凡是自己可以起名字的地方都叫标识符。
- 定义合法标识符规则:
- 由26个英文字母大小写,数字:0-9 ,_或 $ 组成
- 数字不可以开头。
- 不可以使用关键字和保留字,但能包含关键字和保留字。
- Java中严格区分大小写,长度无限制。
- 标识符不能包含空格。
- 驼峰命名法
- HelloWangRan(针对类的,首字母必须大写)
- 方法首字符必须小写: helloWangRan
- 变量首字符必须小写: helloWangRan
**
·Java中的名称命名规范
- 包名:
多单词组成时所有字母都小写:xxxyyyzzz
- 类名接口名:
多单词组成时,所有单词的首字母大写:XxxYyyZzz
- 变量名和函数名:
多单词组成时,第一个单词首字母小写,第二个单词开始每个单词首字母大写:xxxYyyZzz
- 常量名:
所有字母都大写。多单词时每个单词用下划线连接:XXX_YYY_ZZZ
**
·变量和常量
- 常量:
赋值之后值不可以再改变的量
- 变量:
-
概念:
- 内存中的一个存储区域
- 该区域有自己的名称(变量名)和类型(数据类型)
- Java中每个变量必须先声明,后使用
- 该区域的数据可以在同一类型范围内不断变化
-
定义变量的格式:
1.数据类型 变量名
变量名=初始值
2.数据类型 变量名=初始化值 -
变量的作用域:
一对{ }之间有效
-
变量的分类:
-
按被声明的位置划分:
- 成员变量:方法外部、类的内部定义的变量
- 局部变量:方法或语句块内部定义的变量
注意:类外面(类对应的大括号外面)不能有变量的声明 按所属的数据类型划分: 基本数据类型变量 引用数据类型变量
-
-
自动类型转换:
- 容量小的类型自动转换为容量大的数据类型。数据类型按容量大小排序为:
- 有多种类型的数据混合运算时,系统首先自动将所有数据转换成容量最大的那种数据类型,然后再进行计算。
- byte,short,char三者在计算时首先转换为int类型。
- 当把任何基本类型的值和字符串值进行连接运算时(+),基本类型的值将自动转化为字符串类型。
-
-
强制类型转换:
- 将容量大的数据类型转换为容量小的数据类型。使用时要加上强制转换符(),但可能造成精度降低或溢出,要格外注意。
- 字符串转换为基本数据类型,需要通过基本类型对应的包装类提供的parseXXX方法。如: String a = “43”; int i = Integer.parseInt(");
- boolean类型不可以转换为其它的数据类型。