前言
大家好,这是我第一次写博客,自己java技术也一般,若是文中有不对的地方,欢迎指出,核实后我再加以更正
第一章
初学者需要自己从网上下载eclipse和jdk安装包,还需要配置环境变量,这里我就不一一描述了。
关键字
java中有48+2个关键字,都有其各自的使用方法,一会都会一一讲到,大家只需要了解有这么多关键字,不需要死记硬背,这些关键字也全都是小写:
虽然goto和const在java中被保留下来,但已经不执行任何实际方法了
标识符
标识符的命名也是有许多规范要求的,命名有以下两种情况
1.大小写字母开头
2.下划线("_")和美元符号("$")开头
注意事项
1.不能用中文作为标识符名称
2.不能使用关键字作为标识符
3.标识符中不能出现空格
4.不能以数字开头
5.不能出现除"_“和”$"之外其他任何特殊符号
例如:
(正确示范)
int A = 10;
char b123 = 'b';
double $ = 10.00;
(错误示范)
byte 123b = 12;//不能以数字开头
short %ab = 36;//不能以不能出现除"_"和"$"之外其他任何特殊符号
String str* = "msg";//不能以不能出现除"_"和"$"之外其他任何特殊符号
变量与数据类型
变量
在java中用于表示数据的最基本单元;可变的数据量,如:一个人的身高,明天是否下雨。
变量的语法
数据类型 变量名称 = [初始值]
int a = 10;
double b = 3.14;
char c = 'c';
boolean d = true;
变量的分类
全局变量
成员变量:一般在类结构中直接定义的变量,称之为全局变量(成员变量),作用域为整个类中
例:
public class Demo {
/**成员变量(全局变量) alt+up/down 上下移动代码 */
int i = 10;
String name;
public void n(){
//成员变量可以在类中的任意普通方法(实例方法)中被使用
System.out.println(i);
System.out.println(name);
}
public void m(){
System.out.println(name);
}
}
本例中, i 和 name 均为全局变量,所以在该类的任何普通方法中均可使用(静态方法中无法使用,因为静态方法中只能使用静态变量)
局部变量
局部变量:一般在方法或者其他语句块(分支语句,循环语句,游离块)中声明的变量,作用域仅仅在声明区才能生效
public class Demo{
/*
* 方法的参数i,以及方法内部定义的j都是局部变量,作用域仅仅为当前方法内部
*/
public void m(int i){
int j = 10;
}
public void n(){
System.out.println(j);//错误 j无法识别
}
}
本例中,j为局部变量,作用域只在m方法中,所以它只能在m方法中使用,在n方法中无法调用。
注意事项
方法中的参数属于局部变量
不允许在静态的方法中调用非静态的变量或变量
成员变量(全局变量)在未初始化时,可以使用,因为在类加载时会自动为成员变量赋上初始值
局部变量在未赋值(未初始化)时,是不允许被使用的
数据类型
Java是一门强类型语言,即任何的变量在声明时必须显式的指定数据类型,变量的类型一旦确定,则无法修改,Java中数据类型主要分为以下两大类:
1.基本类型
2.引用类型
基本数据类型(简单数据类型)
-
整数类型
- byte(1字节=8bits)
- short(2字节=16bits)
- int(4字节=32bits)Java中默认的整数是int
- long(8字节=64bits)long类型在赋值时必须在数据值末尾追加一个“L”(小写“l”容易与数字1混淆,所以推荐追加大写“L”)
-
浮点类型
- float(4字节)为float类型赋值时,必须在值末尾追加“f”或“F”
- double(字节)double是java中的默认浮点类型
-
字符型
- char**在进行赋值时只能赋值一个字符,并且使用单引号(如:‘a’,‘啊’)
-
布尔型
- boolean (1 bits) boolean在内存中只占一个二进制位,所以取值只能是true或false(不能使用0或1)
例:
byte a = 12;
short b = 128;
int c = 1028;
float d = 1.2f;
doubl e = 5.02;
char f = 'A';
boolean = true;
引用数据类型
Java中的数据类型除了8个基本数据类型除外,其余的数据类型都是引用数据类型,引用数据类型类似于C/C++中的指针,在Java中引用数据类型通常表示为对一个对象的引用,通过该引用可以获取到对象的相关信息,以及调用相关方法。声明引用类型变量是,系统只为该变量分配引用空间,并未创建一个具体的对象
Java中引用类分为以下几类
1.类的引用(Class)
2.数组的引用(Array)
3.接口的引用(Interface)
例如
public class Student{
String name;
String sex;
int grade;
int age;
Student(String _name, String _sex,
int _grade, int _age){
name = _name;
sex = _sex;
grade = _grade;
age = _age;
}
}
测试
Student s = null;
String name = s.getName();//报错,空指针异常
s = new Student ("Lisa","Male",1,18);
String name1 = s.getName();//返回”Lisa”
Student s1 = s;
以上程序内存分配图
基本数据类型转换
在实际问题中,我们经常会碰到基本数据类型的转换,有以下两个特征
- 小转大,直接转
- 大转小,需强转
例:
char c1 = 'A';
char c2 = 'B';
//隐式转换
int i = c1;
System.out.println(i);
System.out.println(c1 + c2);
//强制转换
byte b = (byte)i;
//short s = (short)i;
long len = i;
System.out.println(b);
//算术运算时,系统会自动将小类型转换为大类型计算
short s = 10;
s = (short)(s + 10);
在基本数据类型进行转换时,一定要注意基本数据的范围,避免数据溢出造成的数据丢失!
结束语
今天就讲到这里,希望初学者能将以上内容熟记于心,为后面的内容打下坚实基础,大家一起加油!