《Java语言程序设计基础教程》
29
public String info(){ return \ } }
解答:
class Student extends Person{ private String school ; Student(String n,String l,String school){ super(n,l); this.school = school ; } public String info(){ return super.info()+\ } }
3、定义一个接口,该接口中只有一个抽象方法getClassName()。设计一个类Horse,该类实现接口ClassName中的方法getClassName(),功能是获取该类的类名。
interface Classname { public String getclassname(); }
class Horse implements Classname { public String getclassname() { return this.getClass().getName(); } }
public class Test { public static void main(String[] args) { Classname name = new Horse(); System.out.println(name.getclassname()); } }
4、编写一个Java应用程序,该程序中有1个Cat类继承Object类,具有三个成员属性String name、int furColor、int height,一个构造方法Cat(String name,int furColor,int height),
29
30
《Java语言程序设计基础教程》
并且重写Cat类的toString()和equals(Object obj)成员方法。具体要求如下:
a) 重写toString成员方法,返回值是成员属性String name的值。 b) 重写equals成员方法,如果两个Cat对象的furColor和height属性相等那么返回值是true,否则返回值是false。
class Cat{ int color ; int height,weight ; public Cat(String name,int color,int height,int weight){ this.name=name ; this.color = color ; this.height = height ; this.weight = weight ; } public String toString(){ return this.name; } public boolean equals(Object obj){ if(obj==null) return false ; else{ if(obj instanceof Cat){ Cat c =(Cat) obj ; if(c.color==this.color && c.height==this.height) return true ; } } return false ; } }
18. 定义一个动物类Animal,具有name成员变量,构造方法和sing()方法。定义一个Cat类继承Animal类,增添furColor成员变量,重写构造方法和sing()方法。定义一个Bird类继承Animal类,增添featherColor成员变量,重写构造方法和sing()方法。在main方法中接收用户的输入\ 2.Bird\创建Cat或者Bird对象,并把该对象的引用赋值给一个Animal引用变量pet,最后调用引用变量pet的方法sing(),并将结果输出。
package com.pm.Poly; class Animal{
30
《Java语言程序设计基础教程》
private String name ; Animal(String name){ this.name =name ; } public void enjoy(){ System.out.println(\叫声....\ } }
class Cat extends Animal{ private String eyesColor ; Cat(String n,String c){ super(n) ; eyesColor = c ; } public void enjoy(){ System.out.println(\猫叫声....\ } }
class Dog extends Animal{ private String furColor ; Dog(String n,String c){ super(n) ; furColor = c ; } public void enjoy(){ System.out.println(\狗叫声....\ } }
class Bird extends Animal{ private String featherColor ; Bird(String n,String f){ super(n) ; featherColor=f ;
31
31
32
《Java语言程序设计基础教程》
} public void enjoy(){ System.out.println(\鸟叫声.....\ } }
class Lady{ private String name; private Animal pet ; Lady(String name,Animal pet){ this.name =name ; this.pet =pet ; } public void myPetEnjoy(){ pet.enjoy(); } }
public class TestPolymoph { public static void main(String[] args) { // TODO Auto-generated method stub Lady l3 = new Lady(\ l3.myPetEnjoy() ; } }
第5章 Java API
5.1单项选择题
2、 仔细分析下面程序,正确的输出结果是( )
public class Test1 {
32