1) Java 是面向对象的语言
a) 在面向对象的程序设计中,类是程序的基本单元。我们的程序就是由很多的类组成的。
b) 所有Java程序都以类class为组织单元
c) 关键字class用于创建类
d) 我们一直以来所写的程序的结构:
public class HelloWorld {
}
e) 我们以前写的每一个JAVA文件就是一个类。
2) Java类模板
a) 类将现实世界中的概念模拟到计算机程序中
b) 要在Java中创建一个类,需要一个class,一个类名和一个表示程序体的大括号。
1. class是创建类的关键字,在class的前面有一个public,不要漏写。
2. class的后面就是类的名字。
3. 在大括号中就是类的主体部分。
public class 类名 {
//定义属性部分
属性1的类型 属性1;
属性2的类型 属性2;
…
属性n的类型 属性n;
//定义方法部分
方法1;
方法2;
…
方法m;
}
注意:类里面只能定义属性和方法,通常属性定义在类的开始部分,方法定义在属性的下面。只要不是定义属性的代码必须写在方法里。
3) 定义类
a) 类命名规则
1. 不能使用Java关键字
2. 不能用数字作为类名开头
3. 不能包含除字母、数字、“_”及“$”以外的其他字符
a) 如:空格或“.”号
4. 类名是一个名词,采用大小写混合的方式,每个单词的首字母大写
5. 应该使自己的类名简洁,能描述类的意义。
6. 要用完整的单词,避免缩写。
7. 类名要和文件名相同。
b) 定义一个类的步骤
1. 定义类名:编写类的最外层框架
public class 类名{
//程序体
}
2. 编写类的属性
a) 在类中的属性和下面要讲的方法统称为类成员。
b) 类的属性就是类的数据成员,我们在类的主体中定义变量来描述类所具有的特征(属性),这些变量也叫成员变量。
3. 编写类的方法
a) 类的方法描述了类具有的行为。是类的方法成员,也叫成员方法。
b) 成员方法是独立完成某个功能的单元模块。
c) 示例:
1. 在不同的高校(襄樊学院,武汉大学等),尽管都有很多不同的地方,但还是有许多相同或相似的数据,如学校有名称、教学楼数量、教师数量等。
2. 用类的思想输出学校信息
d) 代码:创建“学校”类
public class School {
// 定义学校的属性
String schoolName; // 学校的名称
int classNum; // 教学楼的数目
int teacherNum; // 教师的数目
// 定义学校的方法
public void showMessage() {
System.out.println(schoolName + "\t" + "拥有:" +
classNum + "栋教学楼\t" + teacherNum + "位教师");
}
}
4) 创建和使用对象
a) 演示使用Eclipse创建类
1. 不带main()方法(入口方法)的类
2. 带main()方法(入口方法)的类
b) 使用对象的步骤:
1. 使用new创建类的一个对象
2. 语法:
类名 对象名 = new 类名();
示例:
School center = new School();
说明:一个类可以创建任意多个对象。
3. 使用对象:使用“.”操作符进行以下操作
a) 给类的属性赋值:对象名.属性
b) 调用类的方法:对象名.方法名()
center.schoolName = "襄樊学院"; //给属性赋值
center. showMessage (); //调用类的方法,该方法中的操作将被执行
c) 演示:创建“襄樊学院”对象
1. 在另一个类里调用刚才创建的“学校”类
public class InitialSchool {
public static void main(String[] args) {
School center = new School(); // 创建 School对象
System.out.println("***初始化成员变量前***\n");
center.showMessage();
center.schoolName = "襄樊学院";
center.classNum = 100;
center.teacherNum = 2000;
System.out.println("***初始化成员变量后***\n");
center.showMessage();
}
}
d) 在代码中,我们使用“.”操作符来调用showMessage ()方法。
e) 我们在为对象的属性赋值前使用了一次center,结果仍然输出了一些信息。这是为什么呢?
1. 在定义类时,如果没有给属性赋初始值,JAVA会给它一个默认值。
f) 在我们使用“.”操作符时,我们可以发现Eclipse弹出了一个下拉菜单,列出了这个对象所有的属性和方法,我们只需要选择我们想要用的就可以了。
5) 案例
a) 编写学生类,输出学生相关信息
1. 分析:
1) 先确定类的名称:Student
2) 分析这个类需要描述的属性有哪些:
姓名
年龄
兴趣
班组编号
3) 确定以上四个属性的数据类型分别是什么:
姓名:字符串
年龄:整数
兴趣:字符串
班组编号:字符串
4) 在Eclipse中创建一个类,类名是:Student
5) 在类中编写代码,实现分析出的四个属性
6) 在类中添加一个方法:public void showMessage(){},在这个方法的大括号中添加用于输出信息的代码即可完成类的编写
2. 代码示例:
public class Student {
String name; // 姓名
int age; // 年龄
String hobby; // 兴趣
String classNo; // 班级编号
public void showMessage() {
System.out.println(name + "\n年龄: " + age + "\n爱好: "
+ hobby + " \n就读于" + classNo);
}
}
b) 编写教师类,输出教师相关信息
1. 分析:
1) 先确定类的名称:Teacher
2) 分析这个类需要描述的属性有哪些:
姓名
教授课程
专业方向
教龄
3) 确定以上四个属性的数据类型分别是什么:
姓名:字符串
教授课程:字符串
专业方向:字符串
教龄:整数
4) 在Eclipse中创建一个类,类名是:Teacher
5) 在类中编写代码,实现分析出的四个属性
6) 在类中添加一个方法:public void showMessage(){},在这个方法的大括号中添加用于输出信息的代码即可完成类的编写
2. 代码示例:
public class Teacher {
String name; // 姓名
String course; // 教授课程
String dep; // 专业方向
int teaYear; // 教龄
public void showMessage() {
System.out.println(name + "\n教授课程:" + course + "\n
主攻方向: " + dep + "\n教龄:" + teaYear);
}
}
|
|