目录
1.什么是变量?
变量(variable)是一个数据存储空间的表示,它是存储数据的基本单元.
2.什么是数组?
数组(array)是相同类型变量的集合,可以使用共同的名字引用它。数组可被定义为任何类型,可以是一维或多维。数组中的一个特别要素是通过下标来访问它。数组提供了一种将有联系的信息分组的便利方法。
3.什么是类?
类(class)是具有相同属性和方法的一组对象的集合.
4.相同点:
①java对各种变量,数组,方法和类等命名时使用的字符序列称为标识符,(凡是自己可以命名的地方都叫标识符)它们都遵守标识符的规则.
标识符命名规则:
⑴标识符必须以字母,下划线"_"或"$"符号开头
⑵标识符可以包括数字,但不能以数字开头
⑶标识符除了"_"或"$"符号以外,不能包含任何特殊字符.
⑷标识符不能使用java语言的关键字,比如int,class,public等.
⑸java标识符大小写敏感,长度无限制.
②类与变量和数组都是先声明再使用:
变量声明方法如下:
数据类型 变量名;
变量名=值;
例:int a;
a=1;
或
数据类型 变量名=值;
例:int a=1;
数组声明方法如下:
数组类型[] 数组名; 或 数据类型 数组名[];
数组名=new 数组类型[数组长度];
例:int[] a;或 int a[];
a=new int[3];
或
数据类型[] 数组名=new 数组类型[数组长度];
数据类型[] 数组名={值1,值2,值3,....值n};
数据类型[] 数组名=new 数组类型[]{值1,值2,值3,....值n};
例:int[] a=new int[3];
int[] a={1,2,3};
int[] a=new int[]{1,2,3};
类的对象声明方法如下:(类也叫做包或自定义数据类型);
类 对象;
对象=new 类();
例: 学生 s;
s=new 学生();
或
类 对象=new 类();
例: 学生 s=new 学生();
5.不同点:
①在java中我们采用Camel(骆驼式)命名法:变量,数组和方法名的第一个单词的首字母小写,后面每个单词的首字 母大写.而类名通常由多个单词组成,每个单词的首字母大写.
②类和数组都是引用数据类型,而变量是基本数据类型.
③数据类型的表现形式不同:
⑴变量的基本数据类型有8种:
整型 : byte,short,int,long ;
布尔型: boolean ;
字符型: char ;
浮点型: double,float;
⑵数组可被定义为任何类型;
⑶类是自定义数据类型,它定义了对象将会拥有的属性和方法.
④分配空间方法不同,空间大小亦不同;
变量:
申明变量并赋值时就直接根据数据的类型而分配不同大小的内存空间,并将数据存储到所分配的空间里;
数组:
声明了数组,只是得到了一个代表数组的变量 ,并没有为数组元素分配内存空间,不能使用.数组要用new关键字来分配空间,并告诉计算机在内存中为它分配了几个连续的空间来存储数据;这里数组里存放的只是数据的引用地址.只能通过数组的下标来访问存储的数据;
类:
声明了类,要创建对象,要用new关键字;但并没有给它的数据成员赋一个特定的值.考虑到每个对象的属性值可能是不一样的.所以在创建对象后再给它的数据成员赋值;要引用对象的属性和方法,需要使用"."操作符来访问;
⑤调用存储数据方法不同;
变量调用时:直接调用变量名
例: int a=1;
System.out.print(a);
数组调用时:通过数组的下标来访问
例: int[] a=new int[]{a,b,c};
System.out.print(a[0]);
类的对象调用时:先打个包,并定义包的属性和方法,要引用对象的属性和方法,需要使用"."操作符;
例:
public class Demo{
public static void main(String[] args){
学生 s=new 学生();
s.name="lisi";
s.age=10;
System.out.print(s.name);
}
}
class 学生{
String name;
int age;
}
⑥层次兼容不同
变量和数组是相对独立的,它们不能包含任何一个,包括类(包).
但对于类(包)而言,它可以包含变量和数组,而变量和数组在类里的表现形式我们称为属性或字段;当然,在代码块里(也叫方法)我们仍然称变量或数组.记住,同一包里属性不能重名,同一个方法或main里变量或数组不能重名 ;
⑦使用的情况不同
什么情况使用变量?
当存储一个学生的姓名时;我们只需创建一个变量:
例:
public class Demo{
public static void main(String[] args){
String name="zhangsan";
}
}
什么情况使用数组?
当存储30个学生的姓名时;
例:如果使用上述做法:我们要创建30个变量;
public class Demo{
public static void main(String[] args){
String name1="zhangsan";
String name2="lisi";
String name3="wansan";
String name4="lansan";
String name5="dansan";
...............
String name30="wansi";
}
}
例:用数组方法:我们只需创建一个数组变量而已;
public class Demo{
public static void main(String[] args){
String[] names=new String[30];
names[0]="zhangsan";
names[1]="lisan";
names[2]="lili";
names[3]="wangsan";
names[4]="wangwu";
names[5]="lisi";
..............
..............
names[29]="langsan";
}
}
这样做只用创建一个变量,并有效的实现统一管理.
什么情况下使用类呢?
当存储30个学生的姓名,年龄,分数时;
如果使用数组的话,要创建三个数组,而且每个数组存储一种类型.可是就把每个学生的信息给分散开了.当要调用的时候就相当繁琐了.这时,就要用到类了.
例:
public class Demo{
public static void main(String[] args){
学生 s1;
s1=new 学生();
s1.name="lisi";
s1.age=10;
s1.point=90;
学生 s2;
s2=new 学生();
s2.name="wansan";
s2.age=10;
s2.point=90;
学生 s3;
s3=new 学生();
s3.name="zhangsan";
s3.age=10;
s3.point=90;
............
............
学生 s30;
s30=new 学生();
s30.name="lili";
s30.age=10;
s30.point=90;
}
}
class 学生{
String name;
int age;
int point;
}
我们不难看出这样虽然使用了33个变量,但每个学生的信息却是一个整体.统一有效的管理了代码.让人看得更清楚.调用的时候也会更加快捷.
6.结论:
在java编程中,我们要清楚的区分基本数据类型和引用数据类型,类与变量和数组的使用都有它的规范,谁也不能代替谁,它们是相辅相成,缺一不可的.java使用它们使所开发出来的程序更加具有健壮性,可维护性.