1. 本周学习总结

2. 书面作业

  1. clone方法
    1.1 Object对象中的clone方法是被protected修饰,在自定义的类中覆盖clone方法时需要注意什么?                                                                                                                                                                                                      答:用protected修饰,则只能被同包内的类和子类所访问,可以将protected改为用public声明,增大clone的使用范围。
    1.2 自己设计类时,一般对什么样的方法使用protected进行修饰?以作业Shape为例说明。                                                                                                                                                                                                                    答:对于只想让同包的类和子类访问的方法采用protected修饰。
    Shape类,其子类有Circle、Rectangle,Circle、Rectangle都继承Shape类,所以都拥有getPerimeter与getArea分别为计算面积与周长的方法。
    1.3 在test1包中编写简单的Employee类,在test2包中新建一个TestProtected类,并在main中尝试调用test1包中的Employee的clone方法克隆一个新对象,能否成功?为什么?                                                                                                       答:必须不能成,第一;不在同个包里;其次特text2包中的TestProtected 类没有implements.

  2. 使用匿名类与Lambda表达式改写题集面向对象2-进阶-多态接口内部类的题目5-2
    仅需粘贴关键代码与运行结果,图片不要太大。                                                                                                                                                                                                                                                                          答:

    •   NameComparator a = new NameComparator();
      Arrays.sort(persons,a);
      for(PersonSortable2 personSortable2 : persons){
      System.out.println(personSortable2);
      }
      AgeComparator b = new AgeComparator();
      Arrays.sort(persons,b);
      for(PersonSortable2 personSortable2 : persons){
      System.out.println(personSortable2);
      }
    • Lamda表达式

      Arrays.sort(persons,(o1,o2)->o1.getName().compareTo(o2.getName()));
      Arrays.sort(persons,(o1,o2)->o1.getAge()-o2.getAge();

    实验结果:                                                                                                                                                                                                                                                                                                                                 

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

    Comparator<Shape> shapeComparator = new  Comparator<Shape>() {
    @Override
    public int compare(Shape o1, Shape o2) {
    //你的代码
    }
    }; 答:shapeComparator实现Comparator接口。
  4. GUI中的事件处理
    4.1 写出事件处理模型中最重要的几个关键词。                                                                                                                                                                                                                                                                          答:事件源,事件对象,监听器。
    4.2 使用代码与注释,证明你理解了事件处理模型。                                                                                                                                                                                                                                                                    答:

    •  public class EventMainGUI1 extends Frame{
      static int count=1;
      public EventMainGUI1 (String title){
      super(title);
      }
      public static void main(String args[]){
      EventMainGUI1 f=new EventMainGUI1 ("hello");
      f.setLayout(new FlowLayout());
      final JButton b = new JButton("1"); //事件源,创建一个按钮
      b.addActionListener(new ActionListener()
      {
      public void actionPerformed(ActionEvent evt)
      {
      b.setLabel(new Integer(++count).toString()); //每点击一次按钮,按钮上的数字就会加1
      }
      });
      f.add(b); //添加按钮
      f.setSize(100,200); //设置窗体大小
      f.setBackground(Color.pink); //设置窗体颜色
      f.setVisible(true); //设置窗体可见
      }
      }
  5. 结对编程:面向对象设计(大作业2-非常重要,未完成-2)
    继续完善上周的项目作业。考核点如下:
    5.1 尝试使用图形界面改写。
    5.2 给出两人在码云上同一项目的提交记录截图。
    5.3 与上周相比,项目的主要改动是什么?

参考资料:
结对编程参考资料
使用Processon画图
视频-使用Netbeans编写GUI
重要:Swing实验参考资料
JTable用法,用于呈现表格数据
Swing相关文章

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

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

3.1. 码云代码提交记录

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

3.2. PTA实验                                                                                                                                                                                                                                                                                                                           答:1.第一题是使用数组来实现栈的功能,自己定义接口的实现类ArrayIntegerStack,以及判断出栈入栈。有点难度,还在不断完善中。
           2.静态内部类的创建,在一个类中建立另一个类。                                                                                                                  

201521123087 《Java程序设计》第6周学习总结的更多相关文章

  1. 20145213《Java程序设计》第九周学习总结

    20145213<Java程序设计>第九周学习总结 教材学习总结 "五一"假期过得太快,就像龙卷风.没有一点点防备,就与Java博客撞个满怀.在这个普天同庆的节日里,根 ...

  2. 20145213《Java程序设计》第二周学习总结

    20145213<Java程序设计>第二周学习总结 教材学习内容总结 本周娄老师给的任务是学习教材的第三章--基础语法.其实我觉得还蛮轻松的,因为在翻开厚重的书本,一股熟悉的气息扑面而来, ...

  3. 20145213《Java程序设计》第一周学习总结

    20145213<Java程序设计>第一周学习总结 教材学习内容总结 期待了一个寒假,终于见识到了神秘的娄老师和他的Java课.虽说算不上金风玉露一相逢,没有胜却人间无数也是情理之中,但娄 ...

  4. 21045308刘昊阳 《Java程序设计》第九周学习总结

    21045308刘昊阳 <Java程序设计>第九周学习总结 教材学习内容总结 第16章 整合数据库 16.1 JDBC入门 16.1.1 JDBC简介 数据库本身是个独立运行的应用程序 撰 ...

  5. 20145330孙文馨 《Java程序设计》第一周学习总结

    20145330孙文馨 <Java程序设计>第一周学习总结 教材学习内容总结 刚开始拿到这么厚一本书说没有压力是不可能的,开始从头看觉得很陌生进入不了状态,就稍微会有一点焦虑的感觉.于是就 ...

  6. 20145337 《Java程序设计》第九周学习总结

    20145337 <Java程序设计>第九周学习总结 教材学习内容总结 数据库本身是个独立运行的应用程序 撰写应用程序是利用通信协议对数据库进行指令交换,以进行数据的增删查找 JDBC可以 ...

  7. 20145337 《Java程序设计》第二周学习总结

    20145337 <Java程序设计>第二周学习总结 教材学习内容总结 Java可分基本类型与类类型: 基本类型分整数(short.int.long).字节(byte).浮点数(float ...

  8. 20145218《Java程序设计》第一周学习总结

    20145218 <Java程序设计>第一周学习总结 教材学习内容总结 今天下午看了Java学习的视频,感觉很是新奇,之前觉得Java学起来是艰难枯燥的,但通过第一章的学习觉得如果自己可以 ...

  9. 《Java程序设计》第九周学习总结

    20145224 <Java程序设计>第九周学习总结 第十六章 整合数据库 JDBC入门 ·数据库本身是个独立运行的应用程序 ·撰写应用程序是利用通信协议对数据库进行指令交换,以进行数据的 ...

  10. 《Java程序设计》第二周学习总结

    20145224陈颢文<Java程序设计>第二周学习总结 教材学习内容总结 一.类型.变量与运算符 1.类型 整数: 可细分为为short整数(占2字节),int整数(占4字节),long ...

随机推荐

  1. JAVA WEB主流开发工具下载集

    JAVA SEhttp://www.oracle.com/technetwor ... ownloads/index.html eclipsehttp://www.eclipse.org/downlo ...

  2. 【有意思的BUG】默认置灰的属性的值传递

    数据由Client发送给Server,如下图所示,Server在收到请求后会响应Client. 比如Client发送给Server一组数据:Name:sean&Hobby:movies& ...

  3. python爬虫url带中文解决方案之一

    import urllib2 urllib2.quote("呵呵哒") #输出 '%BA%C7%BA%C7%DF%D5'

  4. python第一篇-------python介绍

    一.python介绍 python的创始人为吉多·范罗苏姆(Guido van Rossum).1989年的圣诞节期间,Guido开始写Python语言的编译器.Python这个名字,来自Guido所 ...

  5. MVC5+EF6 完整教程17--升级到EFCore2.0

    EF Core 2.0上周已经发布了,我们也升级到core 文章内容基于vs2017,请大家先安装好vs2017(15.3). 本篇文章主要讲下差异点,跟之前一样的就不再重复了. 文章目录(差异点): ...

  6. How to customize the console applicaton

    下面是如何最大化console和改变其显示的字体颜色的代码,顺便包含了计时代码(帮助做性能分析): class Program { [DllImport("kernel32.dll" ...

  7. fetch默认不携带cookie

    最近在使用fetch向服务器发送请求,过程中的体会和遇到的问题在这里记录一下. fetch返回的是一个Promise对象,我们可以对返回的结果做进一步的处理,这是与传统ajax的一个区别. 简单的请求 ...

  8. MySQL、PHP入门

    登录MySQL     mysql -hlocalhost-uroot -proot 退出MySQL     exit 每条语句后必须加分号:----------------------------- ...

  9. DataTableToList

    很简单的转换功能,这是我在GitHub上复制的一段代码(懒得再去找原地址了),感觉功能还算可以,贴出来分享给大家 /// <summary> /// DataTable to List c ...

  10. Python 中的重点来了 : 迭代器 生成器

    可迭代的对象:带有__iter__方法的,就是迭代器.字符串,列表,元祖,字典,集合,文件,都是可迭代的 可迭代的对象使用了__iter__方法的,就是迭代器,带有__next__,__iter__方 ...