java双向关联的源代码,java双向关联的源代码是什么

高分求两个简单的JAVA设计源代码

上面 wuzhikun12同学写的不错,但我想还不能运行,并且还不太完善。我给个能运行的:(注意:文件名为:Test.java)

创新互联公司服务项目包括和政网站建设、和政网站制作、和政网页制作以及和政网络营销策划等。多年来,我们专注于互联网行业,利用自身积累的技术优势、行业经验、深度合作伙伴关系等,向广大中小型企业、政府机构等提供互联网行业的解决方案,和政网站推广取得了明显的社会效益与经济效益。目前,我们服务的客户以成都为中心已经辐射到和政省份的部分城市,未来相信会继续扩大服务区域并继续获得客户的支持与信任!

//要实现对象间的比较,就必须实现Comparable接口,它里面有个compareTo方法

//Comparable最好使用泛型,这样,无论是速度还是代码量都会减少

@SuppressWarnings("unchecked")

class Student implements ComparableStudent{

private String studentNo; //学号

private String studentName; //姓名

private double englishScore; //英语成绩

private double computerScore; //计算机成绩

private double mathScore; //数学成绩

private double totalScore; //总成绩

//空构造函数

public Student() {}

//构造函数

public Student(String studentNo,String studentName,double englishSocre,double computerScore,double mathScore) {

this.studentNo = studentNo;

this.studentName = studentName;

this.englishScore = englishSocre;

this.computerScore = computerScore;

this.mathScore = mathScore;

}

//计算总成绩

public double sum() {

this.totalScore = englishScore+computerScore+mathScore;

return totalScore;

}

//计算评测成绩

public double testScore() {

return sum()/3;

}

//实现compareTO方法

@Override

public int compareTo(Student student) {

double studentTotal = student.getTotalScore();

return totalScore==studentTotal?0:(totalScorestudentTotal?1:-1);

}

//重写toString方法

public String toString(){

return "学号:"+this.getStudentNo()+" 姓名:"+this.getStudentName()+" 英语成绩:"+this.getEnglishScore()+" 数学成绩:"+this.getMathScore()+" 计算机成绩:"+this.getComputerScore()+" 总成绩:"+this.getTotalScore();

}

//重写equals方法

public boolean equals(Object obj) {

if(obj == null){

return false;

}

if(!(obj instanceof Student)){

return false;

}

Student student = (Student)obj;

if(this.studentNo.equals(student.getStudentName())) { //照现实来说,比较是不是同一个学生,应该只是看他的学号是不是相同

return true;

} else {

return false;

}

}

/*以下为get和set方法,我个人认为,totalScore的set的方法没必要要,因为它是由其它成绩计算出来的

在set方法中,没设置一次值,调用一次sum方法,即重新计算总成绩

*/

public String getStudentNo() {

return studentNo;

}

public void setStudentNo(String studentNo) {

this.studentNo = studentNo;

sum();

}

public String getStudentName() {

return studentName;

}

public void setStudentName(String studentName) {

this.studentName = studentName;

sum();

}

public double getEnglishScore() {

return englishScore;

}

public void setEnglishScore(double englishScore) {

this.englishScore = englishScore;

sum();

}

public double getComputerScore() {

return computerScore;

}

public void setComputerScore(double computerScore) {

this.computerScore = computerScore;

sum();

}

public double getMathScore() {

return mathScore;

}

public void setMathScore(double mathScore) {

this.mathScore = mathScore;

sum();

}

public double getTotalScore() {

return totalScore;

}

}

//Student子类学习委员类的实现

class StudentXW extends Student {

//重写父类Student的testScore()方法

@Override

public double testScore() {

return sum()/3+3;

}

public StudentXW() {}

//StudentXW的构造函数

public StudentXW(String studentNo,String studentName,double englishSocre,double computerScore,double mathScore) {

super(studentNo,studentName,englishSocre,computerScore,mathScore);

}

}

//Student子类班长类的实现

class StudentBZ extends Student {

//重写父类Student的testScore()方法

@Override

public double testScore() {

return sum()/3+5;

}

public StudentBZ() {}

//StudentXW的构造函数

public StudentBZ(String studentNo,String studentName,double englishSocre,double computerScore,double mathScore) {

super(studentNo,studentName,englishSocre,computerScore,mathScore);

}

}

//测试类

public class Test {

public static void main(String[] args) {

//生成若干个student类、StudentXW类、StudentBZ类

Student student1 = new Student("s001","张三",70.5,50,88.5);

Student student2 = new Student("s002","李四",88,65,88.5);

Student student3 = new Student("s003","王五",67,77,90);

StudentXW student4 = new StudentXW("s004","李六",99,88,99.5);

StudentBZ student5 = new StudentBZ("s005","朱漆",56,65.6,43.5);

Student[] students = {student1,student2,student3,student4,student5};

for(int i = 0 ; istudents.length; i++){

double avgScore = students[i].testScore();

System.out.println(students[i].getStudentName()+"学生的评测成绩为:"+ avgScore+"分");

}

}

}

运行结果为:

张三学生的评测成绩为:69.66666666666667分

李四学生的评测成绩为:80.5分

王五学生的评测成绩为:78.0分

李六学生的评测成绩为:98.5分

朱漆学生的评测成绩为:60.03333333333333分

java,那句双向关联怎么实现啊?求大神

public class Teacher extends Person{

//关联学生 负责保存老师教过的多个学生

ListStudent list = new ArrayListStudent();

}

public class Student extends Person{

//关联老师 学生被那些老师教过

ListTeacher list = new ArrayListTeacher();

}

eclipse怎么查看java源代码

在Eclipse中查看JDK类库的源代码

设置:

1.点 “window”- "Preferences" - "Java" - "Installed JRES"

2.此时"Installed JRES"右边是列表窗格,列出了系统中的 JRE 环境,选择你的JRE,然后点边上的 "Edit...", 会出现一个窗口(Edit JRE)

3.选中rt.jar文件的这一项:“c:\program files\java\jre_1.5.0_06\lib\rt.jar” 

点 左边的“+” 号展开它

4.展开后,可以看到“Source Attachment:(none)”,点这一项,点右边的按钮“Source Attachment...”, 选择你的JDK目录下的 “src.zip”文件

5.一路点"ok",结束。

dt.jar是关于运行环境的类库,主要是swing的包 

tools.jar是关于一些工具的类库 

rt.jar包含了jdk的基础类库,也就是你在java doc里面看到的所有的类的class文件

使用:

可以在 Java 源代码编辑器或代码片段编辑测试窗中选择类型、方法或字段的名称,然后对元素的定义打开编辑器。

在 Java 编辑器中,选择类型、方法或字段的名称。您也可以仅仅在名称中单击一次。 

执行下列其中一项操作: 

1.从菜单栏中,选择浏览 打开声明 

2.从编辑器的弹出菜单中,选择打开声明 

3.按 F3 键,如下图

eclipse如何关联jdk的源代码

如果你的断点处是一个Java内部的方法(你十有八九是停在了System.out.println处),而你安装的是JDK(Java开发套件),不仅仅是JRE(Java运行环境),那么eclipse的step into会跳入这个方法里。如果你eclipse里设置的JDK关联的源码位置不正确,eclipse就会打开.class文件(否则是直接打开JDK内部的源代码)。

step over倒是没发现会产生这样的问题。

回答补充:

我用的是英文版,如果你用的是中文版,下面的步骤自行与中文菜单对应起来

选择菜单项

Window-Preferences

打开窗体,在左侧面板选

Java-Installed JREs

右侧面板中选择你使用的Java运行环境,见截图第1部分(百度只能上传一张图,所以我把几张截图合在一起了)

点击Edit,在左下角面板中选择你要关联的Java类库,点击“+”号展开,则在右侧面板可以点击Source Attachment...选项选择来源,见截图第2部分和第3部分。

选择好正确的代码来源后(通常是JDK安装目录下的src.zip),你就可以单步跟踪进去了。

不过话说回来,JDK的代码实现不会有什么错误,如果不是为了学习JDK,没必要跟进去,翻看Java API文档并且相信JDK能正确实现其功能即可。如果不小心进入到.class文件里,点击“step return”即可返回你自己的代码。

另外,站长团上有产品团购,便宜有保证


当前文章:java双向关联的源代码,java双向关联的源代码是什么
分享网址:http://ybzwz.com/article/hdhcjd.html