clone
方法是被protected修饰,在自定义的类中覆盖clone方法时须要注意什么?答:第一,要覆盖clone方法,修饰符为public;第二,只能在本类内部或者和Object同包的地方使用,而不能在其余类使用。
Shape
为例说明。答:protected的访问权限是本类,同包和子类,当子类想要访问父类的属性和方法时,能够使用protected。 而在做业Shape类中,有两个子类Circle、Rectangle分别继承了shape类,,因此选择用protected修饰
Employee
类,在test2包中新建一个TestProtected
类,并在main中尝试调###用test1包中的Employee的clone方法克隆一个新对象,可否成功?为何?答:不能成功,由于Employee类和TestProtected类不在同一个包内。
关键代码为:java
class NameComparator implements Comparator<PersonSortable2> { @Override public int compare(PersonSortable2 p1,PersonSortable2 p2) { if(!p1.getName().equals(p2.getName())){ if(p1.getName().compareTo(p2.getName())>0) return 1; else return -1; } return 0; } }
运行结果为:编程
shapeComparator
所指向的对象与Comparator接口有什么关系?Comparator<Shape> shapeComparator = new Comparator<Shape>() { @Override public int compare(Shape o1, Shape o2) { //你的代码 } };
答:shapeComparator所指向的对象只是为了实现Comparator接口,让这个对象能够用Arrays.sort()方法排序。
答:(1)事件源 (2)事件对象 (3)事件监听器
答:用一段PPT中的代码
import java.awt.event.*; import javax.swing.*; public class Tester { public static void main(String[] args) { JFrame f = new JFrame("Test"); f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); JButton b = new JButton("Press Me!");/*在这里定义了一个事件,也就是事件源*/ b.addActionListener(new ButtonHandler());/*插入了一个监听器*/ f.add(b);f.setSize(200, 100);f.setVisible(true); }
题目集:jmu-Java-04-面向对象2-进阶-多态接口内部类ide