Multiple interfaces : Interface and Abstract Class « Language Basics « Java

Multiple interfaces

// :
// Multiple interfaces.
// From 'Thinking in Java, 3rd ed.' (c) Bruce Eckel 2002
// See copyright notice in CopyRight.txt.

interface CanFight {
  void fight();

interface CanSwim {
  void swim();

interface CanFly {
  void fly();

class ActionCharacter {
  public void fight() {

class Hero extends ActionCharacter implements CanFight, CanSwim, CanFly {
  public void swim() {

  public void fly() {

public class Adventure {
  public static void t(CanFight x) {

  public static void u(CanSwim x) {

  public static void v(CanFly x) {;

  public static void w(ActionCharacter x) {

  public static void main(String[] args) {
    Hero h = new Hero();
    t(h); // Treat it as a CanFight
    u(h); // Treat it as a CanSwim
    v(h); // Treat it as a CanFly
    w(h); // Treat it as an ActionCharacter
} ///:~


Related examples in the same category

1.Holds a sequence of ObjectsHolds a sequence of Objects
2.Initializing interface fields with non-constant initializers
3.Two ways that a class can implement multiple interfaces
4.Interface Collision
5.Interface Usage ExampleInterface Usage Example
6.Implement multiple interfaces
7.Multi Super Interfaces
8.This shows that a class implementing an interface need not
9.Find out whether interfaces are inheritedFind out whether interfaces are inherited
10.Abstract classes and methodsAbstract classes and methods
11.Extending an interface with inheritance