interface”(接口)可将其想象为一个“纯”抽象类。它允许创建者规定一个类的基本形式:方法名、自变量列表以及返回类型,但不实现方法主体。接口也可包含基本数据类型的数据成员,但它们都默认为public、static 和final。接口中定义的方法默认为public、abstract。

为什么Java接口中的成员变量默认为(public、static、final)、成员方法为(public、abstract)呢?

接口是一种高度抽象的模版,接口中的成员变量是模版的一部分,其接口的实现类必须共有这些成员变量,所以成员变量的修饰符默认为public、static、final。static使得实现这个接口的类,可以直接使用这个变量。如果是非静态变量,那么接口的多个实现类可能出现变量名重名的现象。final表示被修饰的变量为常数,不可以修改。一个既是static又是final的字段表示只占据一段不能改变的存储空间。如果是非final变量,那么接口的实现类可以修改变量的值,这与抽象类没有区别了。由于接口起到标准化和规范化的作用,所以其成员变量默认修饰符为static、final。

Java接口中的成员变量默认为(public、static、final)、方法为(public、abstract)的更多相关文章

  1. Java接口中的成员变量为什么必须声明为public static final?

    我想对于每个Java程序员来说,接口都不陌生,接口中的方法也经常使用.而接口中的成员变量,就显得用得少一点,而对于成员变量为什么必须声明为public static final,可能就更不清楚了,而且 ...

  2. java接口中定义成员变量

    //抽象类中可以定义如下成员变量:public abstract class People { public String name; public int age; public abstract ...

  3. Java接口中的成员变量的意义

    转自:http://blog.csdn.net/ameyume/article/details/6189749 在interface里面的变量都是public static final 的.所以你可以 ...

  4. java 接口中的成员变量与方法

    java接口中变量的默认修饰符为 public static final int i = 3; 相当于 public static final int i = 3; java接口中方法的默认修饰符为 ...

  5. 接口中的成员变量必须是static

    首先要弄清接口的含义. 接口就是提供一种统一的'协议’, 而接口中的属性也属于'协议’中的成员.它们是公共的,静态的,最终的常量.相当于全局常量. 在interface里面的变量都是public st ...

  6. java类中,成员变量赋值第一个进行,其次是静态构造函数,再次是构造函数

    如题是结论,如果有人问你Java类的成员初始化顺序和初始化块知识就这样回答他.下面是代码: package com.test; public class TestClass{ // 成员变量赋值第一个 ...

  7. java接口中成员变量和方法的默认修饰符(转)

    Java的interface中,成员变量的默认修饰符为:public static final 所以我们在interface中定义成员变量的时候,可以 1:public static final St ...

  8. 【Java关键字-Interface】为什么Interface中的变量只能是 public static final

    三个关键字在接口中的存在原因:public:接口可以被其他接口继承,也可以被类实现,类与接口.接口与接口可能会形成多层级关系,采用public可以满足变量的访问范围: static:如果变量不是sta ...

  9. java接口中的成员方法和成员变量

    接口的含义理解:接口可以理解成统一的"协议",而接口中的属性也属于协议中的内容;但是接口的属性都是公共的,静态的,最终的 接口的成员特点:A:成员变量 只能是常量.默认修饰符 pu ...

随机推荐

  1. Leetcode 100 Same Tree 二叉树

    就是判断两棵树的值和结构是否相同 注意:要判断是否所有的树节点是否为NULL /** * Definition for a binary tree node. * struct TreeNode { ...

  2. EasyUI基础Draggable(拖)

    学前easyui基于解析器,装载机.对他们来说,入门阶段,我们只需要在这一个简单的了解,第一阶段,不宜过深后,. 接着,根据easyui排列官方网站为了学习文件Draggable小工具. Dragga ...

  3. [AC自己主动机] zoj Searching the String

    意甲冠军: 到原始字符串.给n字符串,每个字符串都有一个属性,属性0代表重叠,1代表不能重叠 请各多少次出现的字符串 思维: 为了便于建立两台机器自己主动(0一个.1一个) 然后,它可以重叠非常好做, ...

  4. System.Windows.Documents.Run

    希望采用不同的方案来书写文字,可以使用多个TextBlock,也可以使用一个TextBlock+多个Run <TextBlock FontSize="12" Margin=& ...

  5. WPF Calendar 日历控件 样式自定义

    原文:WPF Calendar 日历控件 样式自定义 粗略的在代码上做了些注释 blend 生成出来的模版 有的时候 会生成 跟 vs ui界面不兼容的代码 会导致可视化设计界面 报错崩溃掉 但是确不 ...

  6. WPF MVVM+EF增删改查 简单示例(二) 1对1 映射

    WPF MVVM+EF增删改查 简单示例(一)实现了对学生信息的管理. 现在需求发生变更,在录入学生资料的时候同时需要录入学生的图片信息,并且一名学生只能有一张图片资料.并可对学生的图片资料进行更新. ...

  7. background-blend-mode叠加代码

    <html> <head> <style> .container { background: url("p1.jpg"), url(" ...

  8. Win10《芒果TV》商店版更新v3.1.4.0:适配Xbox手柄B键后退、手机支持暗色主题不伤眼

    在双十一全球剁手节.光棍节欢庆之际,<芒果TV>UWP版迅速更新v3.1.4版,适配Xbox手柄B键全局后退,支持手机切换暗色主题,优化并解决启动卡顿等问题. 芒果TV UWP V3.1. ...

  9. Visual Studio一直弹出“未将对象引用设置到对象的实例”对话框的处理

    试了一下,VS2017更新到最新版本的时候,会有这个错误.相当于是相当编辑XAML界面的时候会弹出,程序真正执行的时候反而不会弹出. 应该是最新的VS2017在显示XAML编辑界面的时候,会执行一部分 ...

  10. UWP的TextBox和PasswordBox使用输入范围更改触摸键盘InputScope

    原文:UWP的TextBox和PasswordBox使用输入范围更改触摸键盘InputScope 当你的应用运行在具有触摸屏的设备上时,触摸键盘可用于文本输入.当用户点击可编辑的输入字段(如 Text ...