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. Vue动态组件

    前面的话 让多个组件使用同一个挂载点,并动态切换,这就是动态组件.本文将详细介绍Vue动态组件 概述 通过使用保留的 <component> 元素,动态地绑定到它的 is 特性,可以实现动 ...

  2. windows和linux下关闭Tomcat进程

    windows和linux下解决Tomcat进程 windows下启动Tomcat报错,8080端口号被占用,报错信息如下 两种解决方法,一种是关闭了这个端口号,另外一种是修改Tomcat下的serv ...

  3. 在AWS中部署OpenShift平台

    OpenShift是RedHat出品的PAAS平台.OpenShift做为PAAS平台最大的特点是它是完全容器化的PAAS平台,底层封装了Docker和Kubernetes,上层暴露了对开发者友好的接 ...

  4. Command "python setup.py egg_info" failed with error code 1一种问题的解决方法

    问题描述:无论是你在pycharm中直接使用import and install命令,还是pip的时候出现了Command "python setup.py egg_info" f ...

  5. java代理理解

    转载请注明出处:http://www.cnblogs.com/zhangcaiwang/p/6247755.html 代理是一种类,编译器编译完成之后是以$Proxy开头. 初始化代理的时候需要类加载 ...

  6. Writing A Threadpool in Rust

    文 Akisann@CNblogs / zhaihj@Github 本篇文章同时发布在Github上:https://zhaihj.github.io/writing-a-threadpool-in- ...

  7. 【Ubuntu 16】DEB软件包管理

    一.背景介绍 开源软件最早的时候没有软件包和软件包管理器,用户只能下载源码包自行配置 编译 安装. 后来linux各发行版本推出了软件包格式和软件包管理程序 Red Hat.Centos使用RPM格式 ...

  8. linux命令后台执行

    fg.bg.jobs.&.nohup.ctrl+z.ctrl+c 命令 一.& 加在一个命令的最后,可以把这个命令放到后台执行,如 watch -n 10 sh test.sh &am ...

  9. Win7下C:\Users\Cortana以账户名称命名的系统文件夹用户名的修改

    Win7下C:\Users\Cortana以账户名称命名的系统文件夹用户名的修改 Win7下C:\Users\Cortana以账户名称命名的系统文件夹用户名的修改 即修改Cmd命令提示符:C:\Use ...

  10. Redis在电商中的实际应用-Java

    示例代码用Jedis编写. 1. 各种计数,商品维度计数和用户维度计数 说起电商,肯定离不开商品,而附带商品有各种计数(喜欢数,评论数,鉴定数,浏览数,etc),Redis的命令都是原子性的,你可以轻 ...