201521123087 《Java程序设计》第6周学习总结
1. 本周学习总结
2. 书面作业
-
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. -
使用匿名类与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();
实验结果:
-
-
分析下列代码,回答
shapeComparator
所指向的对象与Comparator接口有什么关系?Comparator<Shape> shapeComparator = new Comparator<Shape>() { @Override public int compare(Shape o1, Shape o2) { //你的代码 } }; 答:shapeComparator实现Comparator接口。
-
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); //设置窗体可见 } }
-
-
结对编程:面向对象设计(大作业2-非常重要,未完成-2)
继续完善上周的项目作业。考核点如下:
5.1 尝试使用图形界面改写。
5.2 给出两人在码云上同一项目的提交记录截图。
5.3 与上周相比,项目的主要改动是什么?
参考资料:
结对编程参考资料
使用Processon画图
视频-使用Netbeans编写GUI
重要:Swing实验参考资料
JTable用法,用于呈现表格数据
Swing相关文章
3. 码云上代码提交记录及PTA实验总结
题目集:jmu-Java-04-面向对象2-进阶-多态接口内部类
3.1. 码云代码提交记录
- 在码云的项目中,依次选择“统计-Commits历史-设置时间段”, 然后搜索并截图