1.
Java提供一种机制,让我们根据需要,自己来定义新的数据类型。
新的数据类型是由原始数据类型构造而成的,成为“构造类型”。
2.
Java规定,用户要定义自己的新的数据类型,必须使用关键字class。class后面跟上新的数据类型的名称。
自定义数据类型的名称也是一个标示符,也要遵循标示符命名规范,并且首字母要大些。
在使用自定义数据类型定义该类型的变量时,必须使用new关键字,向内存申请空间。
class Student{ String stuName; int stuId; int stuAge; }
使用class关键字,定义新的数据类型以后,再写程序的话,除了8种原始数据类型和String类型可用以外,
还多了一种新的Student的数据类型。
public class Test{ public static void main(String[] args) { Studnt stu = new Student();//向内存申请自定义数据类型的空间 } }
3.
学Java面向对象(OOP-Object-Oriented Programming)的时候,要点是自定义新的数据类型:class。
//需求:保存一个学生的信息。(学号和姓名) //Java没有提供“学生”这种数据类型,我们自己来定义。 class Student{ String stuName; //学号字段 int stuId; //姓名字段 int stuAge; //年龄字段 } public class Demo{ public static void main(String[] args){ //1.先向内存要空间 Student stu = new Student(); //2.将学生的相关信息数据,放到分配的内存中去:使用"点"(dot)运算符 stu.stuName = "张三"; stu.stuId = 111; stu.stuAge = 18; //3.将学生信息数据取出来 System.out.println("学号:" + stu.stuId); System.out.println("姓名:" + stu.stuName); System.out.println("年龄:" + stu.stuAge); } }
//需求:保存多个学生的信息。(学号和姓名) //自定义一个新的数据类型,代表"学生"这种类型 class Student{ String stuName; //学号字段 int stuId; //姓名字段 int stuAge; //年龄字段 } public class Demo{ public static void main(String[] args){ //1.定义一个Student类型的数组,他只能存入Studnet类型的变量 Student[] stus = new Student[2]; //2.创建并保存第一个学生信息 Student stu01 = new Student(); stu01.stuName = "张三"; stu01.stuId = 111; stu01.stuAge = 18; stus[0] = stu01; //3.创建并保存第二个学生信息 Student stu02 = new Student(); stu02.stuName = "李四"; stu02.stuId = 222; stu02.stuAge = 19; stus[1] = stu02; //for-each遍历数组 for(Student stu : stus){ System.out.println("学号:" + stu.stuId + " 姓名:" + stu.stuName + " 年龄:" + stu.stuAge); } System.out.println("--------------------------------------"); //普通for循环 for(int i = 0;i < stus.length;i++){ Student stu = stus[i]; System.out.println("学号:" + stu.stuId + " 姓名:" + stu.stuName + " 年龄:" + stu.stuAge); } } }