首页 > 其他分享 >接口和枚举在方法中的区别

接口和枚举在方法中的区别

时间:2024-04-07 15:34:44浏览次数:13  
标签:常量 区别 接口 枚举 static 类型 public Constants

枚举类型较传统定义常量的方式,除了具有参数类型检测的优势之外,还具有其他方面的优势。

用户可以将一个枚举类型看作是一个类,它继承于 java.lang.Enum 类,当定义一个枚举类型时,每一个枚举类型成员都可以看作是枚举类型的一个实例,这些枚举类型成员都默认被final、 public、static修饰,所以当使用枚举类型成员时直接使用枚举类型名称调用枚举类型成员即可。

package com.example.enumerate;


import javax.swing.*;

//将常量放置在接口中
interface Constants{
    public static final int Constatnts_A=1;
    public static final int Constatnts_B=12;
}

//将常量放置在枚举中
public class ConstantsTest{
    enum Constants2{
        Constants_A, Constants_B
    }

    //使用接口定义常量
/*    public static void doit(int c){
        switch (1){
            case Constants.Constatnts_A:
                System.out.println("doit() Constants_A");
                break;
            case Constants.Constatnts_B:
                System.out.println("doit() Constants_B");
                break;
        }
    }*/

    //定义一个参数对象是枚举类型的方法
    public static void doit2(Constants2 c){
        switch (c){
            case Constants_A:
                System.out.println("doit()1 Constants_A");
                break;
            case Constants_B:
                System.out.println("doit2()1 Constants_B");
                break;
        }
    }

    public static void main(String[] args) {
        //使用接口中定义的常量
//        ConstantsTest.doit(Constants.Constatnts_A);
        //使用枚举类型中的常量
        ConstantsTest.doit2(Constants2.Constants_A);
//        使用枚举类型中的常量
        ConstantsTest.doit2(Constants2.Constants_B);

        //备注:该方法接受接口中定义的常量参数
//        ConstantsTest.doit(1);

        //备注:因为方法只接受枚举类型的常量作为参数
//        ConstantsTest.doit2(3);
        
    }
}

标签:常量,区别,接口,枚举,static,类型,public,Constants
From: https://www.cnblogs.com/DuWenjie/p/18119149

相关文章

  • 第6章 串行通信接口
    第6章串行通信接口一、串行数据通信基本原理计算机的数据传送有并行和串行两种方式。并行传送的特点是:各数据位同时传送,传送速度快、效率高。但需要的数据线多,因此传送成本高。并行数据传送的距离通常小于30米。串行传送的特点是:数据传送按位顺序进行,最少只需一根传输线即可完......
  • 1688详情API接口:解锁多元化应用场景java php c++
    随着互联网的快速发展,数据交换和信息共享已成为企业日常运营不可或缺的一部分。在这样的背景下,API(应用程序接口)接口作为实现数据互通的重要工具,受到了越来越多企业的青睐。1688详情API接口作为阿里巴巴旗下的重要接口之一,为企业提供了丰富多元的应用场景,助力企业高效推广一、1688......
  • 阿里巴巴中国站获得1688商品详情 API接口(1688开放平台合作)
    1688提供了获取商品详情的API接口,具体如下:公共参数请求地址:​​前往测试​​公共参数名称类型必须描述keyString是调用key(必须以GET方式拼接在URL中)secretString是调用密钥api_nameString是API接口名称(包括在请求地址中)[item_search,item_get,item_search_shop等]cacheStri......
  • 淘宝天猫商品详情页全页数据抓取API接口(商品价格库存销量商品主图)
    淘宝天猫商品详情页全页数据抓取API接口(商品价格库存销量商品主图)的主要功能包括但不限于:商品详情获取:API接口能够抓取淘宝天猫商品详情页的全页数据,包括商品的价格、库存、销量以及商品主图等关键信息。数据更新与同步:通过定期调用API接口,可以实时获取最新的商品数据,保持数据......
  • npm 和 yarn 的使用区别
    从package.json中安装项目依赖:npminstall或yarn向package.json添加/安装新的项目依赖:npminstall{库名}--save或yarnadd{库名}向package.json添加/安装新的dev项目依赖(devDependency):npminstall{库名}--save-dev或yarnadd{库名}--dev删除依赖......
  • 面试常问问题——ios测试和安卓测试的区别
    1.Android长按home键呼出应用列表和切换应用,然后右滑则终止应用; 2.多分辨率测试,Android端20多种,ios较少; 3.手机操作系统,Android较多,ios较少且不能降级,只能单向升级;新的ios系统中的资源库不能完全兼容低版本中的ios系统中的应用,低版本ios系统中的应用调用了新的资源库,会直接......
  • ASP.NET中button、linkbutton、imagebutton及hyperlink这四个控件之间的功能区别?
    原文链接:https://blog.csdn.net/weixin_45763353/article/details/118005453Button是按钮控件,具有按钮所有的属性和事件方法,在客户端被渲染为表单元素提交按钮。Linkbutton是链接按钮,用于创建超链接样式的按钮。该控件的外观与HyperLink控件相同,但其功能与Button控件一样。它......
  • swagger文档枚举类型描述
    背景:问题:使用swagger作为api文档,但文档中的枚举类型仅显示枚举name,对于使用文档的人员来讲不容易理解解决思路:枚举类型加上自定义的描述解决方案maven配置<dependency><groupId>io.swagger.core.v3</groupId><artifactId>swagger-models-j......
  • 面试常见问题——http/https的区别,cookie和session的区别
    http:1、简单快速2、传输类型灵活3、无连接4、无状态一般http中存在如下问题:请求信息明文传输,容易被窃听截取。数据的完整性未校验,容易被篡改没有验证对方身份,存在冒充危险 https:首先客户端通过URL访问服务器建立SSL连接。服务端收到客户端请求后,会将网站支持的证......
  • 面试常问问题——get/post的区别以及常见状态码
     get:1、请求的url+header2、get多用来查询,请求参数放在url中,不会对服务器上的内容产生作用3、GET的参数是直接添加到URL后面的,直接就可以在URL中看到内容4、GET提交的数据长度是有限制的,因为URL长度有限制,具体的长度限制视浏览器而定 post:1、请求的url+header+body2......