`
shawnccx
  • 浏览: 166801 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
文章分类
社区版块
存档分类
最新评论

java接口继承的题目

阅读更多
关于Java的接口继承的题目:
interface Playable {
    void play();
}

interface Bounceable {
    void play();
}

interface Rollable extends Playable, Bounceable {
    Ball ball = new Ball("PingPang");
}

class Ball implements Rollable {
    private String name;
  
    public String getName() {
        return name;
    }
  
    public Ball(String name) {
        this.name = name;      
    }
  
    public void play() {
        ball = new Ball("Football");
        System.out.println(ball.getName());
    }
}
指出上面的程序错误的地方,说明原因。

答案:
   问题出在interface Rollable里的"Ball ball = new Ball("PingPang");"。
    任何在interface里声明的interface variable (接口变量,也可称成员变量),默认为public static final。
    也就是说"Ball ball = new Ball("PingPang")";
   实际上是"public static final Ball ball = new Ball("PingPang");"。
   在Ball类的Play()方法中,"ball = new Ball("Football");"
   改变了ball的reference,而这里的ball来自Rollable interface,Rollable interface里的ball是public static final的,
   final的object是不能被改变reference的。因此编译器将在"ball = new Ball("Football");"这里显示有错。
分享到:
评论

相关推荐

    java 接口练习作业

    在这个"java接口练习作业"中,我们将会探讨接口的使用,以及如何将其应用于集合框架中。 首先,让我们深入了解Java接口的基本概念。接口是完全抽象的类,不能包含实例变量,但可以声明常量。它由一系列无实现的方法...

    java中继承与多态的题目

    Java 中继承与多态的题目 本资源摘要信息是关于 Java 中继承和多态的题目,涵盖了面向对象编程的基本概念和继承机制的应用。 继承的概念 继承是面向对象编程的一种机制,允许一个类(子类)继承另一个类(父类)...

    java有关继承的题目

    在Java编程语言中,继承是面向对象编程的一个核心概念,它允许我们定义类的层次结构,使得一个类可以从另一个类那里继承属性和方法。通过继承,我们可以创建更加具体和专用的类,同时避免代码重复,提高代码的复用性...

    Java经典笔试题目

    2. **面向对象**:Java是纯面向对象的语言,因此对类、对象、继承、封装、多态等概念的理解至关重要。题目可能涉及构造函数、访问修饰符、抽象类与接口、重写与重载等知识点。 3. **集合框架**:Java集合框架包括...

    java基础编程题目总汇

    Java基础编程题目总汇是针对Java初学者设计的一系列练习题,旨在巩固和深化Java编程基础知识。这些题目覆盖了从基本语法、数据类型到控制结构、类与对象、异常处理等多个核心领域,对于想要系统性地提升Java编程技能...

    JAVA 继承基本类、抽象类、接口区别与联系

    ### JAVA继承基本类、抽象类、接口的区别与联系 #### 一、概述 在Java语言中,类(Class)的设计是面向对象编程的核心之一。Java提供了三种方式来扩展类的功能:基本类、抽象类和接口。这三者之间既有相似之处,也...

    JAVA自考考试题目

    JAVA 自考考试题目 以下是根据提供的文件信息生成的相关知识点: 第 1 部分:单项选择题 1. 在 Java 语言中,int 类型数据的长度是 4 个字节。 解释:Java 语言中的基本数据类型 int 的长度是 4 个字节。 2. 在 ...

    Java认证考试题目(59题)

    2. **面向对象编程**:理解类、对象、封装、继承、多态等概念是Java的核心。类的构造器、访问修饰符(public, private, protected, default)以及抽象类和接口也是重要的知识点。 3. **异常处理**:Java中的try-...

    JAVA认证考试题目

    本资源包含了一系列从英文翻译过来的Java认证考试题目,对于准备参加此类考试的人员来说,是一份宝贵的参考资料。 Java认证通常涵盖以下几个核心领域: 1. **Java语言基础**:这部分测试对Java语法、数据类型、...

    java实训题目

    2. **面向对象编程**:Java是一种面向对象的语言,实训题目会涉及类的创建、对象的实例化、封装、继承、多态等概念。理解类与对象的关系,如何通过接口实现多态性,以及如何利用继承来扩展功能,都是实训中的重点。 ...

    Java经典面试题目

    Java中的继承是单继承,即一个类只能有一个父类,但可以通过多重继承接口来实现多继承的效果。 - **封装**:封装是隐藏对象的属性和实现细节,只对外提供公共访问方式。在Java中,通过访问修饰符(public, private,...

    java 最新面试题目``

    【Java最新面试题目解析】 1、面向对象的特征: 面向对象编程(OOP)的核心特征包括抽象、继承、封装和多态性。 - 抽象:抽象是将复杂问题简化的过程,关注对象的关键特性和行为,忽略不重要的细节。抽象分为过程...

    Java英文面试题目

    Java英文面试题目大全 Java英文面试题目大全是涵盖了基本上面的Java英文面试题目和答案的集合,本文将详细解释每个问题的答案,并将相关知识点总结为以下部分: 一、Interface和Abstract Class的区别 Interface和...

    初学者java作业题目

    本资源“初学者java作业题目”是为牛耳软件培训S1-java课程的学生设计的,旨在帮助他们巩固课堂所学,提高编程技能。这份作业集包含了实际操作题目,适合那些正在学习基础Java编程概念的学员。 Java作业题目通常...

    香港JAVA面试笔试题目

    香港的JAVA程序员面试笔试题目可能涵盖以下几个关键领域: 1. **基础语法**:面试可能会开始于一些基本的语法问题,如类、对象、封装、继承、多态等概念。此外,接口、抽象类的区别及其使用场景也是常见的面试题。 ...

    java实验的题目

    2. **面向对象编程**:Java是一种面向对象的语言,因此理解类、对象、封装、继承和多态至关重要。你需要创建类,实例化对象,了解访问修饰符(public、private、protected、默认),并实现方法重写和覆盖。 3. **...

    Java面试经典题目

    - **多重继承 vs 单一继承**:在Java中,一个类可以实现多个接口,这意味着接口支持多重继承的概念。但是,一个类只能继承一个抽象类,这体现了单一继承的原则。 - **定义与实现**:接口仅能包含抽象方法(从Java ...

    JAVA 认证 考试题目

    类的声明可以包括访问修饰符、类名、继承关系、实现接口等信息。 在上面的题目中,选项 3"可以声明一个空类"是正确的,因为在 JAVA 中,可以声明一个不包含任何成员变量或方法的空类。 三、JAVA 注释方法 在 JAVA...

    史上最全Java面试题目大集合

    整理了网上的一些java面试题目,很全很强大 面向对象的特征有哪些方面 1. 抽象:抽象就是忽略一个主题中与当前目标2. 无关的那些方面,3. 以便更充分地注意与当前目标4. 有关的方面。抽象并不5. 打算了解全部问题...

Global site tag (gtag.js) - Google Analytics