java接口的变量为什么是public static final 的
来源:互联网 发布:lte网络结构优化 编辑:程序博客网 时间:2024/05/18 01:22
首先说明为什么是static的,我是这么理解的:
1. 类是单继承多接口,如果接口的变量不是静态的,当多个接口中有相同的变量时,计算机怎么知道这个变量到底是哪个接口的,特别是当这些接口的变量有默认值的时候,这将如何分辨?
2. 接口是不能实例化的,如果接口中有非静态变量,我们就得必须构造实现类的实例,才能使用接口中的变量。
根据以上两点,接口中的变量必须是static的。
接下来,说明为什么必须是final的:
现在,我们知道接口的变量必须是static的,也就是在运行过程中,内存里只保留一份数据,那么如果有其他的方法修改了这个接口的静态变量,将会破坏接口的一致性。导致方法之间互相影响。所以,接口的变量必须是final的。
以上仅仅是我个人理解。
1. 类是单继承多接口,如果接口的变量不是静态的,当多个接口中有相同的变量时,计算机怎么知道这个变量到底是哪个接口的,特别是当这些接口的变量有默认值的时候,这将如何分辨?
2. 接口是不能实例化的,如果接口中有非静态变量,我们就得必须构造实现类的实例,才能使用接口中的变量。
根据以上两点,接口中的变量必须是static的。
接下来,说明为什么必须是final的:
现在,我们知道接口的变量必须是static的,也就是在运行过程中,内存里只保留一份数据,那么如果有其他的方法修改了这个接口的静态变量,将会破坏接口的一致性。导致方法之间互相影响。所以,接口的变量必须是final的。
以上仅仅是我个人理解。
0 0
- java接口的变量为什么是public static final 的
- 为什么接口里的成员变量必须是public static final的?
- 为什么接口中的成员变量非得是public static final的呢?
- 为什么接口要规定成员变量必须是public static final的呢?
- JAVA interface 声明的interface variable (接口变量,也可称成员变量)是public static final
- 为什么接口中的成员变量非得是public static final?
- 为什么接口中的成员变量非得是public static final?
- Java接口中的成员变量为什么必须是public static final?
- Java接口中的成员变量为什么必须是public static final?
- Java接口中的成员变量为什么必须是public static final?
- Java接口中的成员变量为什么必须是public static final?
- java interface 中的变量为什么只能是 public static final
- 接口里定义的成员变量必须是public static final类型
- Java接口中的成员变量为什么必须声明为public static final?
- 为什么Java接口里使用public static final修饰成员变量
- Java接口中的成员变量为什么必须声明为public static final?
- Java接口中的成员变量为什么必须声明为public static final?
- 【Java关键字-Interface】为什么Interface中的变量只能是 public static final
- excel HYPERLINK 如何超链接到某个文字
- LeetCode 118 Pascal's Triangle
- [LCA模板]POJ1330 Nearest Common Ancestors
- Java线程池的调用
- EBS DBA指南笔记(三)
- java接口的变量为什么是public static final 的
- [水]ZOJ1331
- hoj2682Magic-Pen2
- hdoj 2124 Repair the Wall 【贪心】
- cocos2dx-3.2在Win8.1下创建新项目
- 新学习JAVA,记录遇到的各种奇葩问题
- 照猫画虎学gnuplot之折线图
- Android:获取当前系统时间生成日期格式
- Myeclipse中package,source folder,folder区别