1、通过控制器(Controller)实现教师和学生间的互动;
基本需求:
》教师:
。属性:姓名、教授课程名称;
。行为:授课(输出:xx老师在教学生xx学xx课程);
。通过传递姓名和课程名给构造方法生成教师对象;如果只给姓名,教授课程则默认为“HTML5”;保留默认构造器;
》学生:
。属性:姓名
。行为:学习(输出:xx同学在学xx老师教授的xx课程);
基本要求:
一个类一个文件。
实现过程:Teacher类
package org.lanqiao.proj.java1.chapter06;
public class Teacher {
String teaName;
String teaCourse ;
public void teach() {
System.out.println(teaName+"老师正在教学生"+teaCourse+"课程!");
}
public Teacher() {}
public Teacher(String name,String course) {
this.teaName = name;
this.teaCourse = course;
}
public Teacher(String name) {
this.teaName = name ;
this.teaCourse = "HTML5";
}
}
Student类
package org.lanqiao.proj.java1.chapter06;
public class Student {
String stuName;
//int stuAge;
//int stuSex;
//int stuGrade;
public Teacher teacher = new Teacher("刘汉英","操作系统");
public void learn() {
System.out.println(stuName+"同学在学"+teacher.teaName+"老师教授的"+teacher.teaCourse+"课程!");
}
public Student() {}
public Student(String name) {
this.stuName = name;
}
}
Controller测试类:
package org.lanqiao.proj.java1.chapter06;
public class Controller {
public static void main(String[] args) {
Student stu = new Student("杨鹏");
Teacher tea1 = new Teacher("李胜源","JAVA基础");
Teacher tea2 = new Teacher("邓酩");
stu.learn();
tea1.teach();
tea2.teach();
}
}
2、新建一个教师类Teacher,教师属性:姓名(String)、年龄(int)、性别(char)、月薪(double)、是否是教授(boolean);通过创建一个教师,验证对象初始化的4个过程。
教师类Teacher:
package org.lanqiao.java1.chapter06.zuoye2;
public class Teacher {
String teaName ;
int teaAge ;
char teaSex ;
double teaSalary ;
boolean isPros ;
{
this.teaName = "李盛源";
this.teaAge = 18;
this.teaSex = '男';
this.teaSalary = 18000;
this.isPros = false;
}
public Teacher() {}
public Teacher(String name,int age, char sex, double salary, boolean ispros) {
this.teaAge = age ;
this.teaName = name;
this.teaSex = sex;
this.teaSalary = salary;
this.isPros = ispros ;
}
public void selfIforma() {
System.out.println(" 老师名字:"+teaName+"年龄: "+teaAge+"性别: "+teaSex+"月薪"+teaSalary+"是否是教授"+isPros);
}
}
测试类:
package org.lanqiao.java1.chapter06.zuoye2;
public class Test {
public static void main(String[] args) {
Teacher tea = new Teacher();
tea.selfIforma();
Teacher tea1 = new Teacher("刘汉英", 40, '女', 5000, true);
tea1.selfIforma();
}
}
3、重载show方法,实现:
1>.求一个整数和一个浮点数的和
2>.求两个整数的商
3>.求两个浮点数的差
4>.求一个字符串的长度
5>.求一个长整型数据和一个双精度浮点数以及一个短整型数据的和
6>.显示一个整型数组里的数据
HomeWork3类:
package org.lanqiao.java1.chapter06.zuoye3;
import java.util.Scanner;
public class HomeWork3 {
/**
* 求一个整数和一个浮点数的和
* */
static public double show(int x,double y) {
return (double)x+y;
}
/**
* 求两个整数的商
* */
static public int show(int x , int y ) {
return x/y;
}
/**
* 求两个浮点数的差
* */
static public double show(double x, double y) {
return x-y;
}
/**
* 求一个字符串的长度
* */
static public void show(String str) {
System.out.println(str+"的长度为:"+str.length());
}
/**
* 求一个长整型数据和一个双精度浮点数以及一个短整型数据的和
* */
static public double show(long x ,double y ,short z) {
return (double)x+y+(double)z;
}
/**
* 显示一个整型数组里的数据
* */
static public void show(int[] x) {
for (int j = 0; j < x.length; j++) {
System.out.print(x[j]+" ");
}
}
}
测试类:
package org.lanqiao.java1.chapter06.zuoye3;
import javax.security.auth.x500.X500Principal;
public class Test {
public static void main(String[] args) {
System.out.println("3+2.5的结果:"+HomeWork3.show(3, 2.5));
System.out.println("5整除2的结果为:"+HomeWork3.show(5, 2));
System.out.println("5.3-3.2="+HomeWork3.show(5.3, 3.2));
HomeWork3.show("我是杨鹏,我还在完成Java作业!");
System.out.println("60+100.00+1="+HomeWork3.show(60,100.00, (short) 1));
int[]y = {11,22,33,55,66};
HomeWork3.show(y);
System.out.println("{11,22,33,55,66}的内容为:");
}
}
完成以后,觉得自己对一些基本的知识点有点模糊。