目录
一、前言
主要记载自己在学习java中积累的知识以及遇到的一些问题,也会记录一些自己的记忆方法,因为是新手所以可能会有错误,在以后的学习中也会不断作出修正,因为主要是给自己看,所以言语什么的都比较简洁。
二、Java简单介绍
1、JDK、JRE和JVM
JDK包含JRE包含JVM(三层,一层包一层)
1)JDK
运行Java的工具包类,在JDK安装目录下有JRE,其中有两个文件夹bin和lib,我们可以认为bin就是JVM,lib中的是JVM工作所需要的类库,bin和lib组成JRE
2)JRE
Java运行环境,包含JVM标准实现和Java核心类库
3)JVM(Java虚拟机)
用来编译运行Java,所有的Java程序都是在JVM上运行,Java软件是由虚拟机运行,不能在Windows上直接运行。
4)JDK和JRE之间的区别
1:分别表示的含义不同
JDK:Java软件开发工具包
JRE:Java运行环境
2:作用不同
JDK:如果电脑上安装jdk之后 既可以编写代码 又可以运行程序
JRE:如果电脑上安装jre之后只能运行程序
2、开发平台:Eclipse
1)Eclipse简介
Eclipse是由IBM公司投资开发的集成开发软件,基于Java编写是开发源代码的、可扩展的 ;
Eclipse是一个编写代码的软件,只有在安装JDK之后Java才能运行
2)环境变量
环境变量告诉操作系统运行Java相关软件需要调用我们安装的的JDK;
环境变量配置的是JKD安装目录里的启动项;
随着技术的进步与软件的迭代现在不需要配置环境变量就可以正常运行软件了
3)Java开发的优点
Java是一种通过解释方式来执行的语言 ,语法规则类似C++。同时它也是一种跨平台的程序设计语言,用Java语言编写的程序可以运行在任何平台和设备
三、Java语言基础
1、Java主类结构
Java语言是面向对象的语言,Java程序的基本组成单元是类,类体中又包括属性与方法;
每个应用程序都必须包含 main() 方法,含有 main() 方法的类称为主类。
package com.java; //package 为包的关键字,这个语句声明Test01这个类所在的包
import java.util.Scanner; //使用import关键字导入包
public class Test01 { //声明类名为 Test01 的类,
static int m = 3;
public static void main(String[] args) { //主方法(main),程序入口,程序起始点执行的第一个方法
int n = 4; //定义整型变量 n,将4赋值给n
System.out.println("请输入p的值:");
Scanner sc = new Scanner(System.in);
int p = sc.nextInt();
System.out.println("m*n*p="+m*n*p ); //输出语句,输出的结果显示在控制台
}
}
1)包声明
一个Java应用程序由若干个类组成,比如类Test01,语句package com.java 用来声明该类所在的包,package为包的关键字。
2)声明全局变量和局部变量
类的属性称为类的全局变量(成员变量),上图中m为全局变量;
方法中的属性称为类的局部变量,上图中n为局部变量;
全局变量声明在类体中,局部变量声明在方法中;
3)主方法(是程序开始执行的位置)
main() 方法是类体中的主方法,public、static、void 分别是 mian() 方法的权限修饰符、静态修饰符、返回值修饰符,main() 方法必须声明为 public static void。String[]args是一个字符串类型的数组,是 main() 方法的参数。
四、基本数据类型
1、整型
1)整型用来存储整数数值,只有整数部分没有小数部分,可以为正也可以为负数;
2)整型在Java中有三种表示形式,分别为十进制、八进制、十六进制
- 十进制:用0~9来表示数值,满十进一,比如9+1=10,19+1=20
- 八进制:用0~7来表示数值,满七进一;(八进制数必须以0开头)
- 十六进制:0~9表示十个数,剩余五个数分别用A~E来表示;(十六进制数必须以0X或0x开头,比如0X40)
3)整型根据所占内存大小不同分为byte、short、int 和 long 四种类型
2、浮点型
浮点型表示有小数部分的数字,分为单精度浮点型(float)和双精度浮点型(double),他们取值范围不同,双精度浮点型取值范围更大。默认情况下小数被看作double型,如果要使用float型需要在小数后面添加 F或 f ,不加f则系统会默认小数是double类型的。
3、字符类型
1)char型
字符类型用于存储单个 字符,占用两个字节的内存空间(16位),定义字符型变量时,要用单引号表示,如‘s’表示一个字符(表示字符串用双引号)。
使用char关键字可以定义字符变量,如 char x = 's';
2)布尔类型
又称逻辑类型,通过关键字boolean来定义布尔类型变量,他只有 true(真) 和 false(假) 两个值;
布尔类型通常用在流程控制中作为判断条件;
声明: boolean b = true;
4、区别和联系
byte | 字节型 | 一个字节(八位) | 表示范围 -128~127 |
short | 短整型 | 两个字节(十六位) | 表示范围 -2^15~2^15-1 |
int | 整型 | 四个字节(三十二位) | 表示范围 --2^31~2^31-1 |
long | 长整型 | 八个字节(六十四位) | 表示范围 --2^63~2^63-1 |
float | 单精度浮点型 | 四个字节(三十二位) | |
double | 双精度浮点型 | 八个字节(六十四位) | |
char | 字节型 | 两个字节(十六位) |
boolean | 布尔类型 | true or false |
只需记住 int 、float为四个字节,短整型是1/2,长整型是2倍;double双精度浮点型是float单精度浮点型的两倍;
Java语言内部存储采用的是Unicode编码,英文占两个字节,中文占两个字节,所以char为两个字节;
五、变量与常量
1、标识符
标识符可以理解为一个名字,它可以用来标识类名、变量名、方法名、数组名、文件名的有效字符序列;标识符可以由字母、下划线、$ 和数字组成,第一个字符不能是数字。(标识符不能是Java中的保留关键字)
非法标识符:4dsf、String、User name
2、关键字
关键字是Java中已经被赋予特定意义的一些单词,这些单词不能作为标识符来使用;关键字有int、boolean、public等。
3、变量的声明
定义变量就是为了告诉编译器这个变量的数据类型,这样编译器才能知道需要给这个变量配置多少空间以及它能存放什么样的数据。
之所以被称为变量是因为在程序运行过程中内存空间内的值是变化的,所以这个内存空间被称为变量,给这个内存空间取得名字就叫变量名,变量名必须是合法的标识符。变量空间内的数据就叫变量值。
变量名的命名一般采用驼峰结构,如: nameSpace;类名的命名一般首字母大写,如: Test01
4、常量的声明
在程序运行过程中一直不发生改变的量称为常量(constant),通常也被称为“final常量”;常量在整个程序中只能被赋值一次,不能变化,常量值不能被修改。
在Java中声明一个常量除了要指定数据类型以外还需要final关键字进行限定。
声明常量的语法: final 数据类型 常量名称 = 值
final boolean Bool = true;
5、变量的有效范围
在类体中定义的变量被称为成员变量,成员变量在整个类中都有效;
在类的方法体中定义的变量称为局部变量,局部变量只在当前代码块中有效;
语句块内可以调用语句块外的变量,但是语句块外的变量不能调用语句块内的变量,同级别语句块不能调用彼此内定义的变量;
局部变量在用完之后就会销毁