2017-10-31課堂作業01
題目:將「南通青鳥 IT 教育 96 班同學在 3 教室上陸老師的 Java 課」這個場景進行業務類的抽象,類中包含屬性和方法。
分析:
抽象出的類有:
- 學校
- 班級
- 學生
- 教室
- 老師
- 課程
學校類School
package com;
//定義學校類
public class School {
//定義成員變量
//學校名稱
String name;
//學校地址
String address;
//定義方法
//有返回值
String intro1() {
return this.name + "主要培養高端程序員";
}
//無返回值
void intro2() {
System.out.println(this.name + "的地址是:" + this.address);
}
//定義構造方法
//無參構造方法
public School() {}
//帶參構造方法
public School(String name, String address) {
this.name = name;
this.address = address;
}
}
班級類Clazz
package com;
//定義班級類
public class Clazz {
//定義成員變量
//班級名稱
String name;
//班級人數
int number;
//班級編號
String code;
//定義方法
//有返回值
String intro1() {
return this.name + "有" + this.number +"個學生";
}
//無返回值
void intro2() {
System.out.println(this.name + "的編號是" + this.code);
}
//定義構造方法
//無參構造方法
public Clazz() {}
//帶參構造方法
public Clazz(String name, int number, String code) {
this.name = name;
this.number = number;
this.code = code;
}
}
學生類Student
package com;
//定義學生類
public class Student {
//定義成員變量
//學生姓名
String name;
//年齡
int age;
//學號
String code;
//定義方法
//有返回值
String intro() {
return "我的名字叫" + this.name;
}
//無返回值
void listen() {
System.out.println(this.name + "在上課");
}
//定義構造方法
//無參構造方法
public Student() {}
//帶參構造方法
public Student(String name, int age, String code) {
this.name = name;
this.age = age;
this.code = code;
}
}
教室類Classroom
package com;
//定義教師類
public class Classroom {
//定義成員變量
//教室名稱
String name;
//座位數
int seatNumber;
//教室編號
String code;
//定義方法
//有返回值
String intro1() {
return "我在" + this.name + "上課";
}
//無返回值
void intro2() {
System.out.println(this.name + "一共有" + this.seatNumber + "個座位");
}
//定義構造方法
//無參構造方法
public Classroom() {}
//帶參構造方法
public Classroom(String name, int seatNumber, String code) {
this.name = name;
this.seatNumber = seatNumber;
this.code = code;
}
}
老師類Teacher
package com;
//定義老師類
public class Teacher {
//定義成員變量
//姓名
String name;
//年齡
int age;
//編號
String code;
//定義方法
//有返回值
String intro1() {
return this.name + "老師,正在給學生上課";
}
//無返回值
void intro2() {
System.out.println(this.name + "老師很受學生歡迎");
}
//定義構造方法
//無參構造方法
public Teacher() {}
//帶參構造方法
public Teacher(String name, int age, String code) {
this.name = name;
this.age = age;
this.code = code;
}
}
課程類Course
package com;
//定義課程類
public class Course {
//定義成員變量
//課程名稱
String name;
//課程編號
String code;
//定義方法
//有返回值
String intro1() {
return this.name + "是學生最喜歡的課程";
}
//無返回值
void intro2() {
System.out.println(this.name + "的編碼是" + this.code);
}
//定義構造方法
//無參構造方法
public Course() {}
//帶參構造方法
public Course(String name, String code) {
this.name = name;
this.code = code;
}
}
創建對象,控制檯輸出「南通青鳥 IT 教育 96 班同學在 3 教室上陸老師的 Java 課」
package com;
//南通青鳥 IT 教育 96 班同學在 3 教室上陸老師的 Java 課。
public class Test {
public static void main(String[] args) {
//創建學校對象
School school = new School();
//給學校對象name屬性賦值
school.name = "南通青鳥 IT 教育";
//創建班級對象
Clazz clazz = new Clazz();
//給班級對象name屬性賦值
clazz.name = "96班";
//創建教室對象
Classroom classroom = new Classroom();
//給教室對象name屬性賦值
classroom.name = "3教室";
//創建老師對象
Teacher teacher = new Teacher();
//給老師對象name屬性賦值
teacher.name = "陸志強";
//創建課程對象
Course course = new Course();
//給課程對象name屬性賦值
course.name = "Java";
System.out.println(school.name + clazz.name + "同學在" + classroom.name + "上" + teacher.name + "老師的" + course.name + "課程。");
}
}