201521123032 《Java程序设计》第6周学习总结

1. 本周学习总结

1.1 面向对象学习暂告一段落,请使用思维导图,以封装、继承、多态为核心概念画一张思维导图,对面向对象思想进行一个总结。

2. 书面作业

1. clone方法

1.1 Object对象中的clone方法是被protected修饰,在自定义的类中覆盖clone方法时需要注意什么?

应用 clone()方 法,必须继承Object类,重载之后要把 clone()方法的属性设置为 public。

1.2 自己设计类时,一般对什么样的方法使用protected进行修饰?以作业Shape为例说明。

自己设计类时,一般在使用继承方法时使用protected进行修饰。在shape的例子中,

1.3 在test1包中编写简单的Employee类,在test2包中新建一个TestProtected类,并在main中尝试调用test1包中的Employee的clone方法克隆一个新对象,能否成功?为什么?

自己设计类时,一般在使用继承方法时使用protected进行修饰。在shape的例子中,

2. 使用匿名类与Lambda表达式改写题集面向对象2-进阶-多态接口内部类的题目5-2

仅需粘贴关键代码与运行结果,图片不要太大。
修改后:

Comparator<PersonSortable2> NameComparator = (o1 , o2) --> o1.getName().compareTo(o2.getName());
Comparator<PersonSortable2> AgeComparator = (o1,o2) --> o1.getAge()-o2.getAge();

结果:

3.分析下列代码,回答shapeComparator所指向的对象与Comparator接口有什么关系?

Comparator<Shape> shapeComparator = new Comparator<Shape>() { 
@Override 
public int compare(Shape o1, Shape o2) {
 //你的代码 ;
}
}

运用Comparator接口可以比较shapeComparator所指向的对象。

4. GUI中的事件处理

4.1 写出事件处理模型中最重要的几个关键词。

事件源 事件对象 事件监听器

4.2 使用代码与注释,证明你理解了事件处理模型。

public class MainGUI {
   private JFrame frame;
   private JButton button1;
   private JButton button2;
   public static void main(String args[]){
       MainGUI that = new MainGUI();
       that.createAndShow();
   }
   public void createAndShow(){
       frame = new JFrame("GUI example");
       frame.setLayout(new FlowLayout());
       button1 = new JButton("Press Me");
       button2 = new JButton("Don't Press Me");
       frame.add(button1);
       frame.add(button2);
       frame.pack();
       frame.setVisible(true);
   }
} 

上述代码是鼠标点击按钮的事件。

3. 码云上代码提交记录及PTA实验总结

  • 题目集:jmu-Java-04-面向对象2-进阶-多态接口内部类

3.1. 码云代码提交记录

  • 在码云的项目中,依次选择“统计-Commits历史-设置时间段”, 然后搜索并截图

3.2. PTA实验

  • 函数(选做:4-1)、编程(5-3, 5-4)
    • 一定要有实验总结
      这周运用了接口的知识进行编程,在老师的教学后学习了ArrayIntegerStack的使用,然后一一对栈的运用进行编写。参考前两个的写法后,就会对后面的写法有所领悟,所以不用花过多的时间编写。然后在main中编写时候学会在一个包中不同类的运用到main中。
posted @ 2017-04-02 19:22  小腿毛峰  阅读(204)  评论(0编辑  收藏  举报