南邮java网上作业8

总分:100
选择题得分:70
1. int[][] a=new int[2][3],则该数组包含( )个数组元素。
A.2
B.3
C.6
D.不确定
正确答案是: C
2. 已知类person是类student的父类,以下数组定义和赋值正确的是( )。
A.person p[]=new person[3]; p[1]=new student();
B.student s[]=new person[3]; s[1]=new person();
C.person p[]= new student[3];p[1]= new person();
D.student s[]=new student[3];s[1]=new person;
正确答案是: A
3. 下面关于java中类的说法不正确的是( )。
A.类体中包含了变量定义和成员方法的定义
B.构造函数是类中的特殊方法
C.类一定要声明为public的,才可以执行
D.一个java文件中可以有多个class定义
正确答案是: C
4. 关于接口下列说法正确的( )。
A.实现一个接口必须实现接口的所有方法
B.接口间不能有继承关系
C.一个类只能实现一个接口
D.接口和抽象类是同一回事
正确答案是: A
5. 以下有关构造方法的说法,正确的是( )。
A.一个类的构造方法可以有多个
B.构造方法不可以重载
C.构造方法可以有返回值
D.构造方法可以和类同名,也可以和类名不同
正确答案是: A
6. 下列论述中,错误的是( )。
A.Java源代码的后缀名是.java。
B.Java源代码中的每个类经过编译后都会生成一个.class文件。
C.在一个名为A.java的文件中只能定义一个类。
D.Java源代码中可以定义类和接口。
正确答案是: C
7. 下列论述中,正确的是( )。
A.抽象方法是没有方法体的方法。
B.抽象方法一定存在于抽象类中。
C.抽象类中一定要包含抽象方法。
D.抽象类可以创建对象。
正确答案是: A
8. MyClass类定义如下: class MyClass{ public MyClass(int x){ } } 如下方式创建对象,( )是正确的
A.MyClass myobj=new Myclass;
B.MyClass myobj=new Myclass();
C.MyClass myobj=new Myclass(1);
D.MyClass myobj=new Myclass(1,2);
正确答案是: C
9. 关于方法void fjv(int x,int y){},下面( )不能成为它的重载。
A.void fjv(int x,float y){}
B.void fjv(int x){}
C.void fjv(float x,int y){}
D.int fjv(int y,int x){}
正确答案是: D
10. 下述( )说法是不正确的
A.实例变量是用static关键字声明的;
B.实例变量是类的成员变量;
C.方法变量可在方法执行时创建;
D.方法变量在使用之前必须初始化;
正确答案是: A
11. 如果一个方法被修饰为__方法,则这个方法不能被重写。
A.final
B.static
C.void
D.protected
正确答案是: A
12. 在Java中,下面说法正确的是( )。
A.一个子类可以有多个父类,一个父类也可以有多个子类
B.一个子类可以有多个父类,但一个父类只可以有一个子类
C.一个子类可以有一个父类,但一个父类可以有多个子类
D.上述说法都不对
正确答案是: C
13. _变量在内存中只有一个拷贝,被该类的所有对象共享。
A.成员
B.局部
C.全局
D.类
正确答案是: D
14. MAX_LENGTH是int型public成员变量, 变量值保持为常量100,下面哪句定义语句是正确的。
A.public int MAX_LENGTH=100;
B.final int MAX_LENGTH=100;
C.final public int MAX_LENGTH=100;
D.public final int MAX_LENGTH=100;
正确答案是: D
程序填空题得分:30

使用抽象类定义宠物

创建一个抽象类宠物(Pet)并使用该类编程

1) 创建Pet类,包括的成员有名字,且是private类型;
2) 为Pet类定义getName()和setName(String name)成员方法,声明一个抽象方法String shout();
3) 创建宠物类的两个子类,分别为Dog和Cat,为这两个类声明构造函数,在子类的构造函数中调用父类的setName方法设置宠物的名字;
4) 在子类中分别实现不同的shout方法,其中Dog的shout方法返回“Wang Wang Wang”,Cat的shout方法返回“Miao Miao Miao”;

// 编写Main类,生成若干实例并验证程序的功能,请勿改动Main类的定义内容。
public class Main{
    public static void main(String[] args) {
        Pet pet=new Dog("WangCai");
        System.out.println(pet.getName()+":"+pet.shout());
        pet=new Cat("XiaoHua");
        System.out.println(pet.getName()+":"+pet.shout());
    }
}
// 请在本行之后添加你的代码内容
abstract class Pet{
    private String name;
    public Pet(String name){
        this.name = name;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }
    abstract String shout();
}
class Dog extends Pet{
    public Dog(String name){
        super(name);
    }

    @Override
    public void setName(String name) {
        super.setName(name);
    }
    public String shout(){
        return "Wang Wang Wang";
    }
}
class Cat extends Pet{
    public Cat(String name){
        super(name);
    }

    @Override
    public void setName(String name) {
        super.setName(name);
    }
    public String shout(){
        return "Miao Miao Miao";
    }
}
//i love zhangyan

编辑于2018/5/19
如有疏漏或者问题,欢迎私信与我探讨,我会虚心接受教导。
cuicuitrees@gmail.com

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值