命名规则
C语言是匈牙利命名法
java的命名法
常用的
例如 mystudentname
小驼峰命名法
myStudentName
大驼峰命名法
MyStudentName
下划线命名法
my_student_name
标识符与关键字
【1】java注释
(1)单行注释 //
(2)块注释 /* */
(3)类说明、方法说明注释
/**
*
*
*/
【2】分割符
; {} () []
一条语句是以分号(;)结尾的一行代码
一个语句块是以一对花括号({})为边界的语句的集合
【3】标识符
(1)标识符用作给变量、类和方法命名
(2)标示符的命名规则
<1> 数字、字母、下划线、$
<2> 数字不能开头
<3> 不能和关键字重名
<4> 大小写区分
<5> 避免和Java类库的类名重名
<6> 不可以是true或者false,是boolean类型值,不是关键字
【4】Java关键字/保留字
(1)Java中一些赋以特定的含义、并用做专门用途的单词称为关键字(keyword)
(2)所有Java关键字都是小写的
(3)goto和const 虽然从未被使用,但也作为Java关键字保留;
(4)Java中一共有51个关键字
(5)true和false虽然被用作特殊用途,但不是Java关键字
类型
【1】java类型分类
(1)基本数据类型(基本变量)
数值类型: 整数:byte、short、int、long
浮点:float、double
字符类型: char
布尔类型:boolean
(2)引用数据类型(指令变量)
类(class)
接口(interface)
数组(array)
【2】java中的存储数据的内存划分
(1)寄存器区 — java代码中不能直接访问,不研究
(2)栈 — 基本数据类型 — 易改变的、快速
(3)堆 — 类、数组、字符串的实体内容 — 不以改变的、较慢
【3】boolean
boolean类型适于逻辑运算,一般用于程序流程控制
boolean类型数据只允许取值true或false,不可以0或非0的整数替代true和false。
【4】字符型
(1)字符常量是用单引号括起来的单个字符
char c = ‘A’;
(2)Java字符采用Unicode编码,每个字符占两个字节,因而可用十六进制编码形式表示(前缀为u表示Unicode)
char c1 = ‘\u0061’;
(3)转义字符
【5】整数类型
(1)
byte – 1字节
short – 2字节
int – 4字节
long – 8字节
(2)Java语言的整型常量默认为int型
(3)声明long型常量可以后加‘ l ’或‘ L ’
如: long income = 30000L;
【5】浮点类型
(1)
float – 4字节
double– 8字节
(2)Java浮点型常量默认为double型,如要声明一个常量为float型,则需在数字后面加f或F,如:
double d = 3.14;
float f = 3.14f;
(3)比较浮点类型的时候用范围比较,不能直接用==
【6】数据类型的隐式转换
(1)隐式转换
1– 小数据向大数据转
2– 类型要兼容
byte–short–int–long–float–double
(2)注意:
整形向浮点型转换时,容易丢失精度
【7】数据强制类型转换
(1)强制转换
大类型到小类型的转换
long a = 0xffffffffffff;
int b = a;
(2)
1– 强制转换容易丢精度
2– 强制转换改变了原有类型么,没有
【8】Java引用类型
(1)引用类型变量的值是某个对象的句柄,而不是对象本身
(2)声明引用类型变量时,系统只为该变量分配引用空间,并未创建一个具体的对象
person p1 =null;
【9】变量
(1)变量先定义后使用
int a;
a =100;
int a=100;
int a;
int a;
int a=100;
【10】局部变量和成员变量
(1)局部变量
定义在类的方法内或代码块内的变量
局部变量只在定义它的方法体内或代码块内有效
局部变量在使用之前,必须先初始化
(2)成员变量
一个类中既不在方法体内也不在程序块内定义的变量
类中所有的方法和代码块都可以访问成员变量
对于没有初始化的成员变量,系统会指定默认的值 0、null、false
【11】参数传递
(1)参数为基本数据类型时:
传递的是参数的副本,为值传递,接受参数的方法中不会改变参数的值
(2)参数为引用数据类型时:
当对象实例作为参数传递给方法时,传递的是对象的引用,接受参数的方法中可以改变参数的值
【12】java语言编码规范
(1)package (包):所有都是小写
package elearning;
package cn.com.farsight;
(2)Class (类):所有单词首字母都大写
class Mobile
class TestMobile
(3)Interface (接口) :同类
interface Animal;
(4)Method (方法):驼峰法
balanceAccount()
deleteUser()
(5)Variable (变量):驼峰法
currentCustomer
name
age
(6)Constant (常量):都有字母大写
CURRENT_POSITION
MAXNUM_SIZE
(7)Array(数组)
String[] args;
byte[] input;
(8)缩进
(9)注释:说明类/属性/方法的功能,参数的作用
(10)运算符与运算数间用空格间隔
流程控制
【1】顺序
【2】选择
if – else if –else
switch
【3】循环
while
do–while
for
(1)break 和continue
break 跳出本层循环
continue 跳出本次循环
for (i = 0; i < 10; i++) {
if (i == 5)
// break;
continue;
System.out.println(i);
}
数组
【1】数组
(1)数组是用来存储一组相同数据类型数据(基本型、引用型)的数据结构
(2)数组的元素可以是基本类型的数据,也可以是引用类型的数据
(3)无论数组内容是基本类型还是引用类型,数组自己本身都是一种引用类型
【2】数组声明
数组的定义方式有两种:
type[] arr_name;
type arr_name[];
int myarray[];
【3】数组的创建
通过new操作符来创建数组对象,指定数组的大小,给数组元素的存储分配空间
int a[] = new int[10];
或
int myarray[] = null;
myarray = new int[3];
【4】数组初始化
(1)静态初始化
int a[]={3,6,9};
(2)动态初始化
int a[] = new int[10];
for (int i = 0; i < a.length; i++) {
a[i] = i;
}
【5】数组元素的引用
(1)访问数组元素
数组名+数组索引
索引从0开始
(2)测定数组长度的length属性
【6】数值的拷贝
(1)
int[] a = {1,2, 3, 4,5,6,7,8,9, 10};
int[] b;
b=a;
数组的排序:Arrays.sort()
(2)System类的静态方法arraycopy()
参数:
src - 源数组。
srcPos - 源数组中的起始位置。
dest - 目标数组。
destPos - 目标数据中的起始位置。
length - 要复制的数组元素的数量。
作用:
从指定源数组中复制一个数组,复制从指定的位置开始,到目标数组的指定位置结束。
运算符
【1】分隔符
分割符:,,;,[],()
【2】算术运算符: +,-,*,/,%,++,–
(1)++和–
p++; 先取p的值,再p=p+1;
++p; 先p=p+1;再取p值
p+1; p+1,p的值不发生改变
(2)%:左右两边都必须是整数
(3)/
int sum =101;
double f1 = sum/4;
double f2 = sum/4.0;
【3】关系运算符: >,<,>=,<=,==,!=
(1) >,<,>=,<= 只能比较基本类型
(2)== 和= 的区别
(3)==,!= 引用类型也能比较
【4】布尔逻辑运算符: !,& , | , ^ , &&,||
(1)逻辑判断,返回boolean (false 或 true)
(2)
! – 逻辑非 : 反对就是支持
^ – 逻辑异或: 两个逻辑变量相异,输出才为1
&& – 短路与 : 只要遇到一个反对的,其他人不用投票了,决议失败
|| – 短路或 : 只要遇到一个赞成的,其他人不用投票了,决议成立
& – 逻辑与 : 只要有一个反对的,其他人要继续投票了,决议失败
| – 逻辑或 : 只要有一个赞成的,其他人要继续投票了,决议成立
【5】三目条件运算符
三目条件运算符,语法格式:
x ? y : z
(10>100) ? a=10 : a=100;
【6】位运算符
~ —— 取反
& ——按位与
| —— 按位或
^ ——按位异或
与0置0
或1置1
异或取反
其他不变(与1,或0 ,异或0)
【7】移位运算符
>>:右移运算符,将左操作数向右移动,移位个数由右操作数决定
<<:左移运算符,将左操作数向左移动,移位个数由右操作数决定
>>>:无符号右移位运算符
【8】赋值运算符
+=,-=,*=,/=,%=,^=,&=,|=,>>=,<<=,>>>=
(1)+和=之间不能有空格
(2)a+=b: ===》 a=a+b;
(3)优先级最低
【9】作为字符串连接符的“+”
(1)代表字符串拼接
只要有一个操作数为字符串就是增强型加,实现字符串拼接
“abc”+”de” 结果:”abcde”
“12”+34 结果 “1234”
例子: System.out.println(5+”5”);
System.out.println(“5”+”5”);
System.out.println(‘5’+5);
System.out.println(5+5);
【10】表达式
(1) 表达式是运算符和操作数的结合,它是任何一门编程语言的关键组成部分
(2)在Java中,大部分运算也是从左到右结合的,只有单目运算符、赋值运算符和条件运算符例外
【11】优先级
(1)编程时用括号解决
(2)考试前看看、背背