`
i拾贝
  • 浏览: 29934 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

java中的接口interface

    博客分类:
  • java
阅读更多

java中的接口interface

接口(interface)是抽象方法和常量值的定义的集合。

从本质上讲,接口是一种特殊的抽象类,这种抽象类值包含方法和常量的定义,没有变量和方法的实现。

TestInterface.java

//唱歌的接口
interface Singer {
	//唱歌
	public void sing();
	//睡觉
	public void sleep();
}

//画画的接口
interface Painter {
	//画画
	public void paint();
	//吃饭
	public void eat();
}

//学生类实现Singer接口
class Student implements Singer {
	//成员变量
	private String name;
	
	//构造方法
	Student(String name) {
		this.name = name;
	}
	
	//get set方法
	public String getName() {
		return name;
	}
	
	public void setName(String name) {
		this.name = name;
	}
	
	//自定义方法——学
	public void study() {
		System.out.println("studying...");
	}
	
	//重写,实现Singer接口里面的方法
	//唱歌
	public void sing() {
		System.out.println("student is singing...");
	}
	//睡觉
	public void sleep() {
		System.out.println("student is sleeping...");
	}
}

//教师类实现Singer,Painter接口
class Teacher implements Singer, Painter {
	//成员变量
	private String name;
	
	//构造方法
	Teacher(String name) {
		this.name = name;
	}
	
	//get set方法
	public String getName() {
		return name;
	}
	
	public void setName(String name) {
		this.name = name;
	}
	
	//自定义方法——教
	public void teache() {
		System.out.println("teaching...");
	}
	
	//重写,实现Singer接口里面的方法
	//唱歌
	public void sing() {
		System.out.println("teacher is singing...");
	}
	
	//睡觉
	public void sleep() {
		System.out.println("teacher is sleeping...");
	}
	
	//重写,实现Painter接口里面的方法
	//画画
	public void paint() {
		System.out.println("teacher is painting...");
	}
	
	//吃饭
	public void eat(){
		System.out.println("teacher is eating...");
	}
	
}

public class TestInterface {
	public static void main(String[] args) {
		//声明Singer接口引用指向Student
		Singer s1 = new Student("le");
		s1.sing();
		s1.sleep();
		//声明Singer接口引用指向Teacher
		Singer s2 = new Teacher("steven");
		s2.sing();
		s2.sleep();
		//将Singer转化为Painter
		Painter p = (Painter)s2;
		p.paint();
		p.eat();
		
		//测试Student和Teacher的自定义方法
		Student s = (Student)s1;
		s.study();
		Teacher t = (Teacher)s2;
		t.teache();
	}
}

结果:

F:\java>javac TestInterface.java

F:\java>java TestInterface
student is singing...
student is sleeping...
teacher is singing...
teacher is sleeping...
teacher is painting...
teacher is eating...
studying...
teaching...

F:\java>

  

 

补充:

Valuable.java

//interface接口
public interface Valuable {
	public double getMoney();
}

//interface接口
interface Protectable {
	public void beProtected();
}

//interface接口继承接口
interface A extends Protectable {
	void m();
	void getMoney();
}

//abstract抽象类
abstract class Animal {
	private String name;
	
	abstract void enjoy();
}

//class类继承abstract,实现interface
class GoldenMonkey extends Animal implements Valuable, Protectable {
	public double getMoney() {
		return 10000;
	}
	
	public void beProtected() {
		System.out.println("live in the room");
	}
	
	public void enjoy() {
		
	}
	
	public void test() {
		Valuable v = new GoldenMonkey();
		v.getMoney();
		Protectable p = (Protectable)v;
		p.beProtected();
	}
}

//class实现interface
class Hen implements A {
	public void m() {}
	public void beProtected() {}
	public double getMoney() {
		return 1.0;
	}
	
	public void getMoney() {}

}

 

 

分享到:
评论

相关推荐

    Java中的interface接口

    Java接口可以继承其他接口,使用`extends`关键字,如`interface ChildInterface extends ParentInterface { ... }`。接口支持多重继承,一个接口可以继承多个父接口。 5. **默认方法与静态方法**: 自Java 8起,...

    Java中interface接口的作用

    下面将详细讲解Java接口的作用以及其在实际开发中的应用。 首先,接口作为契约,定义了类必须遵循的公共行为。通过实现一个或多个接口,一个类可以声明它支持哪些操作,而无需关心具体的实现细节。这种解耦使得代码...

    详解java接口interface

    Java 接口是 Java 语言中的一种特殊的抽象类,它定义了一组抽象方法和默认方法,用于规范多个类之间的公共行为。在本文中,我们将详细介绍 Java 接口的定义、抽象方法、默认方法、实现类和使用方法。 一、Java 接口...

    Java中interface接口与abstractclas

    在Java编程语言中,`interface`接口和`abstract class`抽象类是两种重要的面向对象设计概念,它们都用于实现多态性,但有着显著的区别。理解这些差异对于编写可扩展和可维护的代码至关重要。 首先,接口是完全抽象...

    C#调用Java接口演示

    3. **C#调用Java接口**:在C#代码中,你可以像使用普通的.NET接口一样使用转换后的Java接口。例如: ```csharp using MyJavaInterface = MyJavaLibrary.MyJavaInterface; public class CSharpConsumer { private ...

    Java接口(interface)的概念及使用-Java教

    Java接口(Interface)是Java编程语言中的一个关键概念,它是一种完全抽象的类型,用于定义对象的行为标准。接口中只包含常量定义和抽象方法,不包含任何实现代码。理解并熟练使用Java接口,对于提升代码的灵活性、...

    java开发接口帮助文档

    Java API(Application Programming Interface)是Java语言的核心组成部分,它定义了Java标准类库中各种类和接口的集合。这些类库涵盖了输入输出、网络通信、数据处理、图形用户界面等多个领域,为开发者提供了丰富...

    Java接口的实现 操作

    在 Java 中,接口是使用 interface 关键字来定义的。接口中可以定义变量、方法、抽象方法、默认方法和静态方法等。接口的变量都是公共静态的,不能被修改。接口的方法可以是抽象的,也可以是默认的或静态的。 在本...

    java 接口(interface).txt

    java 接口(interface)

    java 接口练习作业

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

    JNI(Java Native Interface)中文手册

    JNI(Java Native Interface)是Sun Microsystems公司定义的一套标准接口,用于实现Java代码与本地代码(通常是C或C++)之间的交互。随着Java的发展,JNI的重要性日益凸显,因为它允许Java程序调用本地库的功能,...

    java中接口的作用

    Java 中接口的作用 Java 中的接口是一种抽象的概念,它定义了一组方法的集合,但不提供实现。接口的主要作用是提供一种规范,以便实现类来实现这些方法。接口的作用主要体现在以下几个方面: 多重继承:Java 中的...

    java 接口 java 接口java 接口

    Java接口在Java编程语言中扮演着至关重要的角色,它是实现多态性和抽象化的关键机制。接口定义了一组方法签名,但不提供具体实现,这使得类可以实现多个接口,从而表现出多种行为。以下是对Java接口的详细解释: 一...

    java 泛型接口示例

    综上所述,Java泛型接口提供了强大的类型安全性,允许我们在接口中定义通用的方法,并在实现时指定具体的类型。通过类型参数约束、通配符、类型擦除和类型推断等机制,我们可以灵活地设计和使用泛型接口,提高代码的...

    深入解析Java接口(interface)的使用

    Java接口(interface)是Java编程语言中的一个重要概念,它是完全抽象的,主要用于定义对象间的行为规范,即指定一个类必须实现哪些方法,但不规定这些方法的具体实现。接口的使用是面向接口编程的核心,它有助于...

    Java本地接口(JNI)编程指南和规范 Java Native Interface 6.0 Specification

    总之,Java本地接口(JNI)是Java平台中连接Java世界和本地世界的桥梁,它提供了丰富的功能,但也带来了额外的复杂性和潜在风险。理解和熟练使用JNI是高级Java开发者的必备技能之一。通过JNI,Java开发者可以充分...

    java 接口 代码实例

    总的来说,Java接口提供了定义行为规范的方式,它促进了代码的可扩展性和灵活性。通过接口,我们可以实现类与类之间的松耦合,使得系统更易于维护和升级。在给定的文件`Studens.java`中,可能包含一个实现了`...

    Java 本地接口规范

    综上所述,Java本地接口规范(JNI)是Java生态系统中的一个关键组成部分,它不仅连接了Java世界与本地代码的世界,还为Java开发者提供了强大的工具箱,使他们能够在各种应用场景下发挥Java的优势。通过深入理解JNI的...

Global site tag (gtag.js) - Google Analytics