枚举类型

黑马程序员-14 Java基础加强1

你说的曾经没有我的故事 提交于 2020-04-07 12:19:46
------- android培训 、 java培训 、期待与您交流! ---------- 枚举 有限对象的类 public class EnumTest { /** * @param args */ public static void main(String[] args) { //普通方法模拟枚举 MyWeekDay weekDay=MyWeekDay.SUN; System.out.println(weekDay.nextDay()); WeekDay weekDay2=WeekDay.FRI; System.out.println(weekDay2);//枚举类提供了toString方法 System.out.println(weekDay2.name());//FRI,返回此枚举常量的名称,在其枚举声明中对其进行声明 System.out.println(weekDay2.ordinal());//5,返回枚举常量的序数(它在枚举声明中的位置,其中初始常量序数为零)。 System.out.println(weekDay2.getClass());//class cn.itcsat.day1.EnumTest$WeekDay //枚举类中的静态方法 System.out.println(WeekDay.valueOf("SUN"));/

Effective Objective-C2.0读书小记(一)枚举

*爱你&永不变心* 提交于 2020-04-07 11:37:40
第五条:用枚举表示状态、选项、状态码 枚举类型:enum ①枚举是一种常量命名方式。比如说: enum EOCButtonType { EOCButtonTypeCustom, EOCButtonTypeSystem, EOCButtonTypeDetailDisclosure, }; 编译器会为枚举分配一个独有的编号,从0开始,每个枚举递增+1。 当然,也可以不使用编译器分配的序号 enum EOCButtonType { EOCButtonTypeCustom=1, EOCButtonTypeSystem, EOCButtonTypeDetailDisclosure, }; 上述代码把的值设为1,而不使用编译器所分配的0,接下来的几个枚举的值都会在上一个的基础上递增1,比如说,EOCButtonTypeDetailDisclosure的值就是3. 定义枚举的方式: enum EOCButtonType type =UIButtonTypeDetailDisclosure; 用typedef关键字重新定义:(这样就不用每次定义时敲入enum而只需要写EOCButtonType了) typedef enum EOCButtonType EOCButtonType; EOCButtonType state =EOCButtonTypeDetailDisclosure;

黑马程序员 Java 加强

守給你的承諾、 提交于 2020-04-07 07:43:14
---------------------- android培训 、 java培训 、期待与您交流! ---------------------- 1.可变参数 可变参数特点: 只能出现在参数列表的最后; ...位于变量类型和变量名之间,前面有无空格都可以; 调用可变参数的方法时,编译器为该可变参数隐式创建一个数组,在方法体内以数组的形式访问可变参数 7 public class VariableParameter { 8 9 public static int add(int x,int...args) 10 { 11 int sum=x; 12 for (int i = 0; i < args.length; i++) { 13 14 sum=sum+args[i]; 15 } 16 return sum; 17 } 18 public static void main(String args[]) 19 { 20 System.out.println(add(2,4)); 21 System.out.println(add(1,2,3,4,5,6)); 22 } 23 } 2.枚举 1.用enum定义枚举类默认继承了java.lang.Enum类而不是继承了Object类。其中java.lang.Enum类实现了java.lang.Serializable和java.lang

USB插入电脑的硬件检测和枚举流程

孤街浪徒 提交于 2020-04-07 07:15:44
USB协议定义了设备的6种状态,仅在枚举过程种,设备就经历了4个状态的迁移:上电状态(Powered),默认状态(Default),地址状态(Address)和配置状态(Configured)(其他两种是连接状态和挂起状态(Suspend))。 下面步骤是Windows系统下典型的枚举过程,但是固件不能依此就认为所有的枚举操作都是按照这样一个流程行进。设备必须在任何时候都能正确处理所有的主机请求。 1.用户把USB设备插入USB端口或给系统启动时设备上电 这里指的USB端口指的是主机下的根hub或主机下行端口上的hub端口。Hub给端口供电,连接着的设备处于上电状态。 2.Hub监测它各个端口数据线上(D+/D-)的电压 在hub端,数据线D+和D-都有一个阻值在14.25k到24.8k的下拉电阻Rpd,而在设备端,D+(全速,高速)和D-(低速)上有一个1.5k的上拉电阻Rpu。当设备插入到hub端口时,有上拉电阻的一根数据线被拉高到幅值的90%的电压(大致是3V)。hub检测到它的一根数据线是高电平,就认为是有设备插入,并能根据是D+还是D-被拉高来判断到底是什么设备(全速/低速)插入端口(全速、高速设备的区分在我将来的文章中描述)。如下图。 USB全速/高速设备上电连接 (Full-speed Device Cable and Resistor Connections)

Apple Swift语言中文教程

坚强是说给别人听的谎言 提交于 2020-04-06 21:57:29
Apple Swift编程语言入门教程 目录 1 简介 2 Swift入门 3 简单值 4 控制流 5 函数与闭包 6 对象与类 7 枚举与结构 1 简介 今天凌晨Apple刚刚发布了Swift编程语言,本文从其发布的书籍《The Swift Programming Language》中摘录和提取而成。希望对各位的iOS&OSX开发有所帮助。 Swift是供iOS和OS X应用编程的新编程语言,基于C和Objective-C,而却没有C的一些兼容约束。Swift采用了安全的编程模式和添加现代的功能来是的编程更加简单、灵活和有趣。界面则基于广受人民群众爱戴的Cocoa和Cocoa Touch框架,展示了软件开发的新方向。 Swift已经存在了多年。Apple基于已有的编译器、调试器、框架作为其基础架构。通过ARC(Automatic Reference Counting,自动引用计数)来简化内存管理。我们的框架栈则一直基于Cocoa。Objective-C进化支持了块、collection literal和模块,允许现代语言的框架无需深入即可使用。(by gashero)感谢这些基础工作,才使得可以在Apple软件开发中引入新的编程语言。 Objective-C开发者会感到Swift的似曾相识。Swift采用了Objective-C的命名参数和动态对象模型

java反射机制

荒凉一梦 提交于 2020-04-06 07:14:50
在学习java反射机制前我们需要对 java.lang.Class<T> 这个类有较为清楚的认识。   Class 类的实例表示正在运行的 Java 应用程序中的类和接口。枚举是一种类,注释是一种接口。每个数组属于被映射为 Class 对象的一个类,所有具有相同元素类型和维数的数组都共享该 Class 对象。基本的 Java 类型( boolean 、 byte 、 char 、 short 、 int 、 long 、 float 和 double )和关键字 void 也表示为 Class 对象。   Class 没有公共构造方法。 Class 对象是在加载类时由 Java 虚拟机以及通过调用类加载器中的 defineClass 方法自动构造的。 来源: https://www.cnblogs.com/yangwei20160911/p/5866892.html

对象的拓展

别来无恙 提交于 2020-04-05 23:29:29
对象拓展 对象拓展回顾: 对象字面量,对象解构,三个点运算符 对象name属性 对象的方法name属性,但是有两种属性方法比较特殊。 1、如果是特性方法,要通过特性对象获取。 // // 对象 // let obj = { // demo() {}, // // 特性方法 // get num() {}, // set num(val) { // return 10 // }, // } // console.log(obj.demo.name) // // 特性方法名称 // // console.log(obj.num.name) //报错 // // 通过特性对象获取 // let descriptor = Object.getOwnPropertyDescriptor(obj, 'num'); // console.log(descriptor) // console.log(descriptor.get.name) // console.log(descriptor.set.name) 2、如果是symbol属性方法,返回symbol描述。 // // Symbol数据 // let s1 = Symbol('ickt') // let s2 = Symbol() // // 对象 // let obj = { // demo() {}, // // 特性方法 //

02-02-08、JDK8的语法糖

风流意气都作罢 提交于 2020-04-05 19:12:24
​1、什么是语法糖 如果要来进行一个拆字游戏的话,语法糖可以拆分成“语法” 和 “糖”,每一种计算机语言都有自己的语法,Java也不例外。 语法就是在这一个语言中,要表示一种行为的表示模式,如赋值:int i = 666;如循环while(foo){},语法在一种语言的运行环境中是原生支持的,是体现在其运行时当中的。 糖是则是一种对于吃它的人来说感觉到甜的碳水化合物,往其他食物中加入糖会让食物变甜,吃糖能让人愉悦。 语法糖(Syntactic Sugar)就是给语法裹上一层糖,因此语法糖也称语法糖衣,让使用这些被裹上糖的语法的编码人员感觉到“甜”。例如,Java中使用for循环语法对一个集合进行遍历,写法为: int [] collection = new int [ 6 ]; for ( int i = 0 ; i < collection.length; i++){ // do something } 而现在,你只需要这么写就行: int [] collection = new int [ 6 ]; for ( int i : collection){ // do something } 是否内心会感到小小的“甜”呢。 有人会感觉很奇怪,我就是这么写的啊,这不就是Java的语法么?还说是什么语法糖!呸!~ 我们都知道,Java是一门高级语言,它的运行环境JVM执行的是字节码

【C语言】23-typedef

ぃ、小莉子 提交于 2020-04-04 21:11:51
本文目录 一、typedef作用简介 二、typedef与指针 三、typedef与结构体 三、typedef与指向结构体的指针 四、typedef与枚举类型 五、typedef与指向函数的指针 六、typedef与#define 说明:这个C语言专题,是学习iOS开发的前奏。也为了让有面向对象语言开发经验的程序员,能够快速上手C语言。如果你还没有编程经验,或者对C语言、iOS开发不感兴趣,请忽略 这讲介绍C语言中很常用的一个关键字---typedef。 回到顶部 一、typedef作用简介 * 我们可以使用typedef关键字为各种数据类型定义一个新名字(别名)。 1 #include <stdio.h> 2 3 typedef int Integer; 4 typedef unsigned int UInterger; 5 6 typedef float Float; 7 8 int main(int argc, const char * argv[]) { 9 Integer i = -10; 10 UInterger ui = 11; 11 12 Float f = 12.39f; 13 14 printf("%d %d %.2f", i, ui, f); 15 16 return 0; 17 } 在第3、第4、第6行分别给int、unsigned int

注入神器sqlmap命令大全

▼魔方 西西 提交于 2020-04-02 08:15:44
详解强大的SQL注入工具——SQLMAP Akast [N.S.T] 1. 前言 Windows下的注入工具好的又贵,免费的啊D、明小子等又不好用,我们根本没必要花 时间去找什么破解的havij、pangolin什么的,特别是破解的工具很可能被绑了木马。其实 Linux下的注入工具也是非常强大的,不过分的说,可以完全取代Windows下面的所有注入 工具。 就如backtrack系统里面就有非常丰富的注入工具,对MSSQL、MYSQL、oracle等各种 数据库的应有尽有了,而且这些工具都是免费的,并且是开放源代码的,我们还可以用来修 改为合适自己使用的注入工具。 本文给大家介绍的SqlMap是一个开放源码的渗透测试工具,它可以自动探测和利用SQL 注入漏洞来接管数据库服务器。它配备了一个强大的探测引擎,为最终渗透测试人员提供很 多猥琐的功能,可以拖库,可以访问底层的文件系统,还可以通过带外连接执行操作系统上 的命令。 2. SQLMAP命令详解 为了方便使用我把sqlmap的选项都翻译出来了,当然可能会存在一些不恰当的地方, 请大家指出,可以给我发邮件:akast@ngsst.com。如果我有时间会把这个工具出个中文版。 Options(选项): --version 显示程序的版本号并退出 -h, --help 显示此帮助消息并退出 -v VERBOSE 详细级别:0-6