首先你要弄清接口的含义.接口就是提供一种统一的'协议',而接口中的属性也属于'协议'中的成员.它们是公共的,静态的,最终的常量.相当于全局常量.
抽象类是不'完全'的类,相当于是接口和具体类的一个中间层.即满足接口的抽象,也满足具体的实现. 如果接口可以定义变量,但是接口中的方法又都是抽象的,在接口中无法通过行为来修改属性。有的人会说了,没有关系,可以通过实现接口的对象的行为来修改接口中的属性。这当然没有问题,但是考虑这样的情况。如果接口A中有一个public访问权限的静态变量a。按照java的语义, 我们可以不通过实现接口的对象来访问变量a,通过A.a = xxx;就可以改变接口中的变量a的值了。正如抽象类中是可以这样做的,那么实现接口A的所有对象也都会自动拥有这一改变后的a的值了,也就是说一个地方改变了a,所有这些对象中a的值也都跟着变了。这和抽象类有什么区别呢,怎么体现接口更高的抽象级别呢,怎么体现接口提供的统一的协议呢,那还要接口这种抽象来做什么呢?所以接口中不能出现变量,如果有变量,就和接口提供的统一的抽象这种思想是抵触的。所以接口中的属性必然是常量,只能读不能改,这样才能为实现接口的对象提供一个统一的属性。
通俗的讲,你认为是要变化的东西,就放在你自己的实现中,不能放在接口中去,接口只是对一类事物的属性和行为更高层次的抽象。对修改关闭,对扩展(不同的实现implements)开放,接口是对开闭原则的一种体现。
在interface里面的变量都是public static final 的。所以你可以这样写:
public static final int i=10;
或则
int i=10;(可以省略掉一部分)
注意在声明的时候要给变量赋予初值
分享到:
相关推荐
在Java编程语言中,常量和变量是两个基础且重要的概念。它们是程序中存储数据的容器,理解它们的性质和用法对于编写高效的代码至关重要。 ### 常量 常量是固定不变的值,一旦被定义就不能再更改。在Java中,我们...
在这个"java接口练习作业"中,我们将会探讨接口的使用,以及如何将其应用于集合框架中。 首先,让我们深入了解Java接口的基本概念。接口是完全抽象的类,不能包含实例变量,但可以声明常量。它由一系列无实现的方法...
在计算机科学领域中,环境变量是操作系统为应用程序提供的一个标准接口,用于存储系统级别的设置信息。对于Java开发者而言,正确配置Java环境变量是确保Java程序能够正常运行的基础。本文将详细介绍如何在Windows...
Java 中的基本类型和引用类型变量的区别 Java 中的基本类型和引用类型变量是两个不同的概念,它们在内存分配、变量赋值和函数传递等方面有着本质的区别。 基本类型是 Java 中的八种基本类型,包括 byte、short、...
接口中可以定义变量、方法、抽象方法、默认方法和静态方法等。接口的变量都是公共静态的,不能被修改。接口的方法可以是抽象的,也可以是默认的或静态的。 在本例中,我们设计了一个员工类(Employee),该类实现了...
Matlab与Java接口技术是实现两者间高效交互的重要途径,它允许我们在Matlab环境中利用Java的强大功能,同时也能让Java程序调用Matlab的功能,实现数据处理和计算任务的无缝对接。本文将详细阐述配置要求、环境配置、...
Java接口在Java编程语言中扮演着至关重要的角色,它是实现多态性和抽象化的关键机制。接口定义了一组方法签名,但不提供具体实现,这使得类可以实现多个接口,从而表现出多种行为。以下是对Java接口的详细解释: 一...
这是一个DEmo,讲解了Unity 3D的编译顺序,以及C# 和 JavaScript 代码之间的变量相互调用,简单明了!
在成员变量中,类变量由所有实例共享,而实例变量则属于每个实例。在值传递时,基本类型传递的是实际值,而引用类型传递的是对象的地址。 4. **变量的生存期**: 局部变量在方法执行完毕后立即消失,实例变量随着...
添加%JAVA_HOME%\bin到PATH变量中,使得命令行可以直接执行Java相关的命令,如`java`, `javac`, `jar`等,而无需提供完整的路径。 **CLASSPATH**: 这个环境变量告诉Java虚拟机(JVM)在哪里寻找类文件。虽然在现代...
在Java编程语言中,变量的访问控制是通过四种访问修饰符来实现的,它们分别是`public`、`private`、`protected`以及默认的(无修饰符,也称为`default`)。这些修饰符决定了变量在类的不同部分以及不同类之间的可见...
Java语言中变量和方法的分析及其应用.pdf Java语言中变量和方法是编程语言中非常重要的概念,对于Java语言当然也不例外。变量是用于标识数据的存储单元,它可以存储数值、字符串、对象等类型的数据。方法是描述实现...
Java接口是Java编程语言中的一个重要概念,它提供了一种方式来定义对象的行为规范,而无需关心其实现细节。接口是抽象方法和常量值的集合,可以看作是一种特殊的抽象类,但其中只包含方法签名和常量定义,不包含任何...
在Java编程语言中,类作为成员变量是一种常见的设计模式,它允许我们将一个对象实例嵌套在另一个类的内部,以此来实现数据封装和模块化。这种做法有助于组织代码,提高可读性和可维护性。下面将详细介绍如何在Java中...
1. **创建Java接口**:在Java代码中,定义一个native方法,声明将要调用的C++函数。例如: ```java public class ThunderDownload { public native void startDownload(String url); // 其他相关接口声明 } ``...
在Java编程语言中,变量和数据类型是编程的基础,它们决定了程序如何存储和处理数据。数据运算则是在这些变量和数据类型基础上进行的操作,对于初学者来说,理解这些概念至关重要。下面将对Java中的变量、数据类型...
Java中的变量是程序中最基本的存储单元,它们是用来存储数据的容器。理解变量在Java编程中的概念至关重要,因为它是编写任何程序的基础。在Java中,变量扮演着存储和检索值的角色,这些值可以是整数、小数、字符或者...
Java接口是Java编程语言中的一个重要概念,它是定义行为规范的蓝图,允许类之间进行多态性的实现。在Java中,接口是一种完全抽象的类型,它只包含常量定义和抽象方法,不包含任何实例变量。接口是Java实现面向接口...
Java接口是完全抽象的,允许类通过实现接口来遵守特定的合同,确保不同类之间的一致性和可扩展性。下面我们将详细讨论Java接口的基本用法。 1. **接口定义** 接口定义以`interface`关键字开始,后跟接口名,如`...