3986.net
小网站 大容量 大智慧
当前位置:首页 >> 数学 >>

(抽象类和接口)自测题

10.1 在下面类的定义中,哪个定义了一个合法的抽象类? class A{ abstract void (a) }} (a) unfinished(){ public class abstract A{ abstract void unfinished();} (d) class A{ abstract void unfinished();} (b) abstract class A{ abstract void unfinished();} (c) abstract class A{ protected void unfinished();} (e) abstract class A{ abstract int unfinished();} (f) 答案:(c)(f)是合法的抽象类; 分析:(a)中的方法虽然声明 abstract,但是实现方法体的方 法不能为抽象方法; (d)中的 abstract 写在 class 关键字的后面不合法; (b)声明 abstract 方法的类必须为抽象类,在 class 前应该 添加 abstract; (e)没有方法体的方法必须声明为抽象方法,在 void 前应该 添加 abstract ; 10.2 getArea 和 getPerimeter 方法可以从 GeometricObject 类中删除. 在 GeometricObject 类中定义 getArea 和 getPerimeter 方法为抽 象方法的好处是什么? 1 public abstract class GeometricObject { 2 private String color = white; 3 private boolean filled; 4 private java.util.Date dateCreated; 5 6 /** Construct a default geometric object */ 7 protected GeometricObject() { 8 dateCreated = new java.util.Date(); 9} 10 11 /** Return color */ 12 public String getColor() { 13 return color; 14 } 15 16 /** Set a new color */ 17 public void setColor(String color) { 18 this.color = color; 19 } 20 21 /** Return filled. Since filled is boolean, 22 so, the get method name is isFilled */ 23 public boolean isFilled() { 24 return filled; 25 } 26 27 /** Set a new filled */ 28 public void setFilled(boolean filled) { 29 this.filled = filled; 30 } 31 32 /** Get dateCreated */ 33 public java.util.Date getDateCreated() { 34 return dateCreated; 35 } 36 37 /** Return a string representation of this object */ 38 public String toString() { 39 return created on + dateCreated + \ncolor: + color + 40 and filled: + filled; 41 } 42 43 /** Abstract method getArea */ 44 public abstract double getArea(); 45 46 /** Abstract method getPerimeter */ 47 public abstract double getPerimeter(); 48 } 10.3 下面哪一个是正确的接口? interface A{ void print(){};} (a) abstract interface A{ print();} (b) abstract I1,I2{ abstract interface A extends void print(){};} (c) interface A{ void print();} (d) 10.4 如下程序定义了两个 max 方法,解释为什么签名 max(Comparable, Comparable)的方法优于签名 max(Object, Object)的方法. 下面的语句正确吗? String s = Max.max(abc, efg); Date date = Max.max(new Date(), new Date()); 10.5 可以在类中定义 compareTo 方法而不去实现 Comparable 接口.实现 Comparable 接口的好处是什么? 10.6 如下程序清单中, 1 public class House implements Cloneable, Comparable { 2 private int id; 3 private double area; 4 private java.util.Date whenBuilt; 5 6 public House(int id, double area) { 7 this.id = id; 8 this

网站首页 | 网站地图 | 学霸百科 | 新词新语
3986 3986.net
文档资料库内容来自网络,如有侵犯请联系客服。zhit325@qq.com