Java入门
引言
学习Java已经有一段时间,但对于很基础的理论知识都只是有些印象,做不到信手拈来,在此将其记录下来供以后温故知新。
内容
Java语言的特点
简单性、面向对象、高性能、分布式处理、健壮性、动态性、移植性
健壮性
既吸收了C、C++的优点,又改进了影响其健壮性的功能
e.g. 指针、内存的申请与释放等
跨平台性
开发的软件适用于多种操作系统
e.g. windows, linux, mac
一次编译,处处运行
安全性
其安全性体现在许多方面,就语言本身来讲,体现在严格遵循面向对象的规范、无指针运算、数组边界检查、强制类型转换检查等。
Java 编译器和虚拟机强制实施的内置的语言安全特性:
强大的数据类型管理
自动内存管理
字节码验证
安全的类加载
JDK、JRE和JVM的关系
JDK(Java Development Kit)
JRE(Java Runtime Environment)
JVM(Java Virtual Machine)
JRE=JVM+核心类库
JDK=JRE+java开发工具(javac,jar等)=JVM+核心类库+开发工具
Java两大核心机制
Java虚拟机(Java Virtual Machine)——运行Java应用程序
垃圾回收机制(Garbage Collection)——在Java运行过程中自动对不再使用的内存空间进行回收,不受程序员的干预
标识符(命名时使用的字符序列)
命名规则:
由字母、数字、_或$组成
数字不能开头
不能为关键字或保留字,但可以包含
不能包含空格
严格区分大小写
类命名时首字母大写
方法和变量命名时首字母小写
常量
整数
小数
字符
字符串
布尔
变量
定义方式
A. 数据类型 变量名;
变量名=数据值;
B.数据类型 变量名=数据值;//创建的同时赋值
按数据类型可分为以下两大类
基本数据类型
整数类型
byte short int(默认) long(后缀为l或L)
浮点类型
double(默认) float(后缀为f或F)
字符类型
char
布尔类型
boolean:只能为true或false,常用于逻辑判断
引用数据类型
基本数据类型以外的数据类型
数据类型转换
A.自动类型转换
short a=1;
int b=a;
B.强制类型转换
int a=123;
short b=(short)a;
运算符
赋值运算符:= += -= *= /= %=
将右侧的值赋给左侧变量。
比较运算符:> < >= <= == !=
比较两边表达式之间的关系,结果只能是布尔类型(boolean)。
逻辑运算符:& | ^ ! && ||
与 &——全为true时结果才为true,否则结果为false
或 |——只要有一个为true结果即为true,否则为false
异或 ^——两表达式都为true或都为false时结果为false,否则为true
非 !——原来的否定
短路与 &&——当左边表达式结果为false时将不再执行右边表达式,提高开发效率
&和&&、|和||的区别
-
3<2&10>2 //false
-
3<2&&10>2 //false
-
作用相同,但执行效果不同
短路或 ||——和短路与类似
三元运算符
格式:
(条件表达式)?表达式1:表达式2;
如果条件为true,运算后的结果是表达式1;
如果条件为false,运算后的结果是表达式2;
顺序结构
顺序结构是程序中最简单最基本的流程控制,没有特定的语法结构,写在前面的先执行,写在后面的后执行
条件结构
未完待续…
以上内容来自老师讲解及网上学习资料,若有不足欢迎指正,侵删