- android 发一个可以下载的的android studio历史版本
花花鱼
androidandroidstudioandroidide
1、AndroidStudio下载文件归档|AndroidDevelopers2、上个图:
- 零基础安卓开发起步(二)
zhyuzh3d
本文介绍从零开始进行安卓APP的开发,MaterialDesign的使用。记录学习过程,仅供新手参考。引入MaterialDesignMaterialDesign是谷歌发布的一套安卓界面元素模板。首先我们把它引入到项目里面。首先从项目列表中打开【GradleScripts-Build.gradle(module:app)】文件。如果没有这个文件,不要着急,注意AndroidStudio底部的文字,
- android studio程序打不开,Android Studio project 文件打不开问题解决
成长中的Elva老师
androidstudio程序打不开
现象:Android项目的所有文件都打不开,搜了一圈,和此篇原因可能类似:解决:打开工程,Androidstudio右下角出现error提示:com.intellij.diagnostic.PluginException:TryingtooverridealreadyregisteredfiletypeMakefile[Plugin:name.kropp.intellij.makefile]atc
- 用正则表达式过滤logcat中的多个tag的日志
fc82bb084ee7
在AndroidStudio中,在过滤器的byLogTag选项中配置.我配置了2个tagfilter方便开发,1.multi-tag-filter2.ignore-multi-tag-filter.过滤出指定tag的日志信息^(?:Watchdog|InputReader|ahking)Watchdog忽略指定tag的日志信息^(?!WifiMonitor|WifiHW)有些tag的无用log非常
- Flutter的升级和降级步骤
AiFlutter
flutter
升级1.版本升级//升级到指定版本flutterupgrade版本号//升级到最新版本flutterupgrade2.更新开发配置启动AndroidStudio。打开Settings对话框,查看SDKManager。如果你已经打开了一个项目,请打开Tools>SDKManager。如果显示WelcometoAndroidStudio的对话框,请单击Open按钮后面的MoreOptions图标,然后
- eclipse Unknown error: Unable to build: the file dx.jar was not loaded from the SDK folder
吉凶以情迁
eclipse出现了这个问题Unknownerror:Unabletobuild:thefiledx.jarwasnotloadedfromtheSDKfolder解决方法删除最新的build-tools文件夹,或者把老版本的dx.jar替换到最新的里面去。我是androidstudio和eclipse分了2个不同的sdk文件夹了。image.png
- WebView交互架构项目实战(三),androidstudio地图开发
wq221aas
程序员架构移动开发android
不过根据官方文档,AppCache已经不推荐使用了,标准也不会再支持。现在主流的浏览器都是还支持AppCache的,以后就不太确定了。同样给出Android端启用AppCache的代码。WebViewmyWebView=(WebView)findViewById(R.id.webview);WebSettingswebSettings=myWebView.getSettings();webSett
- unity打包android工程文件,Unity2018使用Gradle打包Android
Zz 911
https://docs.unity3d.com/2018.4/Documentation/Manual/android-gradle-overview.html所用版本unity2018.4.19打包流程:使用unity的gradle导出工程,在导出的工程中添加androidstudio生成的库工程以及做其他的设置,使用gradle打包最终的apk。下面是在这个过程中遇到的一些问题进行记录。1.
- 向项目添加组件
鹿小纯0831
在开始之前,我们建议您阅读“架构组件指南”。该指南包含一些适用于所有Android应用程序的有用原则,并展示了如何将架构组件一起使用。架构组件可从Google的Maven存储库获得。要使用它们,请按照下列步骤操作:一、添加GoogleMaven存储库默认情况下,AndroidStudio项目未配置为访问此存储库。要将其添加到项目中,请打开项目的build.gradle文件(而不是应用程序或模块的文
- AndroidStudio配置adb环境变量和adb的使用
还在学习进步
Androidadbandroid
adb环境变量的配置:第一种方法①直接打开电脑-属性-高级配置-环境变量②将C:\Users\Admin\AppData\Local\Android\Sdk\platform-tools作为值,放到Path变量里面第二种方法①创建一个android目录【类似于JAVA_HOME】②将C:\Users\Admin\AppData\Local\Android\Sdk\platform-tools作为值
- react native和java_Expo和React Native有什么区别?
weixin_39860166
reactnative和java
BrentVatne的答案很好,但我想补充一些细节.Expo扩展了ReactNative的API表面ReactNative没有提供开箱即用的所有JSAPI,只提供了大多数原始功能.ReactNative开发人员应该使用AndroidStudio/XCode链接其他本机库.Expo旨在增强RN并提供您最常见需求所需的所有JSAPI.它基本上是一组定义良好的原始库,已经为您打包在一个库中:ExpoKi
- 【安卓开发】发送广播报错One of RECEIVER_EXPORTED or RECEIVER_NOT_EXPORTED...
Zheng113
someproblemsandroidjavaandroidstudio安卓
在备课准备下午去给学生上实验课,本来教材提供了源码,但为了不出意外,还是在自己电脑上完整跑一遍代码,但对着书核对了每行代码,androidstudio中还是报错,能在模拟机上安装app,但点开闪退,查了一些资料,有几种说法:1.没有开广播权限,没有开通知权限等等权限问题;2.由于安卓版本升级,安全等级变高,需要设置专门的通道但是在尝试完上述两种对应解决办法后,无果,遂仔细去看了控制台的两个报错er
- android studio SQLite数据库的简单使用
爱掉发的小龙
oracle数据库androidstudiojavaandroidsqlite
在AndroidStudio中使用数据库可以有多种方式,常见的几种方式包括使用SQLite数据库和使用SQLite数据库SQLite是一款轻量级的关系型数据库管理系统,在Android中被广泛使用。要在AndroidStudio中使用SQLite数据库,需要先创建一个数据库帮助类,这个类继承自SQLiteOpenHelper类,用于创建和管理数据库。在数据库帮助类中,可以定义表结构和数据库操作方法
- 开始切换到 Kotlin: 谷歌工程师给初学者的知识点总结
谷歌开发者
image在2019年的I/O大会上,我们曾宣布Kotlin将会是Android应用开发的首选语言,但是,部分开发者们反馈仍不清楚如何切换到Kotlin,如果团队中没有人熟悉Kotlin,一开始直接使用Kotlin进行项目开发还是会令人生畏。在AndroidStudioProfiler团队内部,我们是通过几个步骤克服了这个问题,第一步是要求所有的单元测试使用Kotlin编写。这么做有效避免了我们犯
- 安卓model转鸿蒙ets
麦克尔.马
androidharmonyos华为
现在的androidstudio提供了java自动转kotlin的实现,非常方便。那android的java和kotlin有没有可能转成鸿蒙arkts呢。本质上都是字符串文件,讲道理应该是可行的。先从最简单的model转换开始,把kotlin的model转成ets。通过插件的形式把kt/java文件转成ets文件,贴个kt2ets的方法:funconvertKt2Ets(ktCode:String
- Kotlin inline内联函数
linlinlinl
今天介绍下Kotlin中非常重要的内联函数,小伙伴系紧鞋带准备发车普通函数调用下面测试整数相加的情况funcalculate(){println(add(a=1,b=3))}funadd(a:Int,b:Int)=a+b反编译查看下java代码(AndroidStudio或idea下可以使用kotlin插件直接查看,路径是Tools→Kotlin→ShowKotlinBytecode→DECOMP
- ️Rust 移动端开发体验
tooy0ng
rust开发语言androidiosxcode
在过去的几周里,我根据Xlog和Loagan的设计思路,使用Rust写了一个移动端的跨平台日志库EZLog。在我实现这个库的过程中,查阅了大量的问答和博客。因为这些开发者的分享,节省了我大量的时间。所以我把我的经历也分享出来。如果以下任何一个点你感兴趣,不要划走。当下(2022)Rust在移动端的开发体验如何没有Java/Kotlin代码,不使用AndroidStudio和Gradle,秒级编译并
- Android Studio下Svn忽略文件配置的几种方法
nwsuafer
androidandroidstudio.gitignoresvn.svnignore
(一)新建项目的时候AndroidStudio向导会创建两个.gitignore,对应的,我们创建两个.svnignore就可以了。里面配置信息可以参考.gitignore,具体配置信息可以参考github推荐的.gitignore写法#builtapplicationfiles*.apk*.ap_#filesforthedexVM*.dex#Javaclassfiles*.class#built
- Android 11 ,Android Studio 三方APP调用系统 system/lib 目录下so库使用过程中的BUG(坑)。
苏苏码不动了
androidandroidstudiobug
背景介绍:最近在做文件管理器,需要把图库的功能集成到文件管理器中,实现在文件管理器中打开图片、切换图片的功能。在实现gif图片打开功能的时候,需要用到系统现成的gifplayerso库,导入Androidstudio的时候遇到了一堆问题,解决了感觉有必要记录一下主要的两个问题。一、Androidstudio导入so库。 按照下图创建目录导入。 java代码中使用System.loadLibra
- Error:null value in entry: incrementalFolder=null
努力与幸运
一般是在Androidstudio异常退出(比如强制关机)后,重新打开后运行项目出现该问题。删除项目根目录的.gradle文件夹,然后CleanProject——RebulidProject。
- 在 Patient Tracking Android 应用程序 (Kotlin) 中集成华为 Account Kit_kotlin 华为应用
2401_84132496
程序员androidkotlin华为
在androidstudio中创建项目,请参阅创建AndroidStudio项目。生成SHA-256证书指纹。生成SHA-256证书指纹。在android项目右上角点击Gradle,选择ProjectName>Tasks>android,然后点击signingReport,如下。注意:项目名称取决于用户创建的名称。在AppGalleryConnect中创建一个应用程序。从App信息中下载agcon
- ubuntu22.04 android studio调试android13 framework源码
蚰蜒螟
androidstudioandroidide
##androidstudio##android-studio下载下载AndroidStudio和应用工具-Android开发者|AndroidDevelopers##创建目录mkdirandroid-studio-2023##进入目录cdandroid-studio-2023/##解压tar-zxvfandroid-studio-2023.3.1.18-linux.tar.gz##启动ubunt
- Flutter: XCode error “Unable to boot the Simulator“
Alan_Walker1
flutterxcodemacos
我正在使用flutter、androidstudio,通过iOS模拟器运行我的项目,一直一切正常,重启Mac后再启动模拟器,无法启动模拟器,并且得到了这个错误r"Unabletobootthesimulator".解决方法,亲测有效:在macOS13及更高版本上:进入系统设置→常规→存储→开发人员删除“开发者缓存”在macOS12及更低版本上:转到关于本机→存储→管理→开发人员删除所有内容(不用担
- Mac下 AndroidStudio 3.0+ 智能感知提示忽略大小写
南北VS东西
第一步屏幕快照2019-06-29下午8.47.57.png第二步·将图中的Matchcase取消选中屏幕快照2019-06-29下午8.49.38.png完成屏幕快照2019-06-29下午8.51.50.png
- Android Studio心得-创建登录注册项目
wfytz
androidstudioandroidide
首先先了解AndroidStudio是什么:AndroidStudio是一个由谷歌开发的Android应用程序开发环境,用于开发Android应用程序。它基于JetBrainsIntelliJIDEA软件,并包含了许多定制化功能,包括易于使用的分析工具、内存分析工具和代码编辑器等,支持Java、Kotlin等多种编程语言。AndroidStudio还提供了模拟器和虚拟设备来测试应用程序,可以帮助开
- 关于安卓脚本打包apk
水很清
android脚本打包apk
Android开发过程中,一般习惯依赖于用Androidstudio来打包apk,通过图形化界面来打包,操作也简单。这种情况一般适用于程序员,有一种情况是,客户需要自己打包,然而客户不是开发者,不懂用Androidstudio,这个时候要不给他们提供一个打包文档,要不手把手教,但还是有可能存在失误。但是如果,把打包的操作写成一个脚本,再告诉客户一个运行这个脚本的命令,基本上就可以保证万无一失了。先
- android 源码导入android studio
l309681481
android
1.在源码中生成androidstudio环境下载好全包源码后,在源码根目录执行以下四条命令:1."sourcebuild/envsetup.sh"(source可以用.代替,即".build/envsetup.sh")2."lunch",并选择要编译的项目3."makeidegen-j4"(这里的-j4表示用4线程来编译,可以不加)4."sudodevelopment/tools/idegen/
- android stido 之中。rename class XXXX and its useage to 的快捷键是什么
呆咖啡
androidintellij-ideajava
在AndroidStudio中,重命名一个类及其所有使用的快捷键是Shift+F6。当你按下Shift+F6时,会弹出一个对话框,允许你重命名类名、方法名、变量名等,并在项目中自动更新所有相关的引用。具体操作步骤:选中要重命名的类名、方法名或变量名。按下Shift+F6。在弹出的对话框中输入新的名称,然后按下Enter,AndroidStudio会自动更新所有相关的引用。这是AndroidStud
- 常用编程软件自定义字体大全(持续更新中)
sky-stars
笔记编辑器
常用编程软件自定义字体大全(持续更新中)VisualStudio2022自定义字体大小VisualStudioCode自定义字体大小IntelliJIDEA自定义字体大小Eclipse自定义字体大小PyCharm自定义字体大小AndroidStudio自定义字体大小微信开发者工具自定义字体大小NavicatPremium自定义字体大小
- MAC M1通过AndroidStudio JRE来配置JDK的路径
xuanwenchao
java环境配置androidstudioandroid
安装MacM1芯片版本的AndroidStudio,版本如下:下载地址启动AndroidStudio同步成功后打开AndroidStudio的Preferences-Build,Execution,Deployment-BuildTools-Gradle可以看到GradleJDK的路径,将该路径在命令行下复制好我的MAC系统版本是Monterey12.5.1,因此应该将环境变量添在到zshrc文件
- java责任链模式
3213213333332132
java责任链模式村民告县长
责任链模式,通常就是一个请求从最低级开始往上层层的请求,当在某一层满足条件时,请求将被处理,当请求到最高层仍未满足时,则请求不会被处理。
就是一个请求在这个链条的责任范围内,会被相应的处理,如果超出链条的责任范围外,请求不会被相应的处理。
下面代码模拟这样的效果:
创建一个政府抽象类,方便所有的具体政府部门继承它。
package 责任链模式;
/**
*
- linux、mysql、nginx、tomcat 性能参数优化
ronin47
一、linux 系统内核参数
/etc/sysctl.conf文件常用参数 net.core.netdev_max_backlog = 32768 #允许送到队列的数据包的最大数目
net.core.rmem_max = 8388608 #SOCKET读缓存区大小
net.core.wmem_max = 8388608 #SOCKET写缓存区大
- php命令行界面
dcj3sjt126com
PHPcli
常用选项
php -v
php -i PHP安装的有关信息
php -h 访问帮助文件
php -m 列出编译到当前PHP安装的所有模块
执行一段代码
php -r 'echo "hello, world!";'
php -r 'echo "Hello, World!\n";'
php -r '$ts = filemtime("
- Filter&Session
171815164
session
Filter
HttpServletRequest requ = (HttpServletRequest) req;
HttpSession session = requ.getSession();
if (session.getAttribute("admin") == null) {
PrintWriter out = res.ge
- 连接池与Spring,Hibernate结合
g21121
Hibernate
前几篇关于Java连接池的介绍都是基于Java应用的,而我们常用的场景是与Spring和ORM框架结合,下面就利用实例学习一下这方面的配置。
1.下载相关内容: &nb
- [简单]mybatis判断数字类型
53873039oycg
mybatis
昨天同事反馈mybatis保存不了int类型的属性,一直报错,错误信息如下:
Caused by: java.lang.NumberFormatException: For input string: "null"
at sun.mis
- 项目启动时或者启动后ava.lang.OutOfMemoryError: PermGen space
程序员是怎么炼成的
eclipsejvmtomcatcatalina.sheclipse.ini
在启动比较大的项目时,因为存在大量的jsp页面,所以在编译的时候会生成很多的.class文件,.class文件是都会被加载到jvm的方法区中,如果要加载的class文件很多,就会出现方法区溢出异常 java.lang.OutOfMemoryError: PermGen space.
解决办法是点击eclipse里的tomcat,在
- 我的crm小结
aijuans
crm
各种原因吧,crm今天才完了。主要是接触了几个新技术:
Struts2、poi、ibatis这几个都是以前的项目中用过的。
Jsf、tapestry是这次新接触的,都是界面层的框架,用起来也不难。思路和struts不太一样,传说比较简单方便。不过个人感觉还是struts用着顺手啊,当然springmvc也很顺手,不知道是因为习惯还是什么。jsf和tapestry应用的时候需要知道他们的标签、主
- spring里配置使用hibernate的二级缓存几步
antonyup_2006
javaspringHibernatexmlcache
.在spring的配置文件中 applicationContent.xml,hibernate部分加入
xml 代码
<prop key="hibernate.cache.provider_class">org.hibernate.cache.EhCacheProvider</prop>
<prop key="hi
- JAVA基础面试题
百合不是茶
抽象实现接口String类接口继承抽象类继承实体类自定义异常
/* * 栈(stack):主要保存基本类型(或者叫内置类型)(char、byte、short、 *int、long、 float、double、boolean)和对象的引用,数据可以共享,速度仅次于 * 寄存器(register),快于堆。堆(heap):用于存储对象。 */ &
- 让sqlmap文件 "继承" 起来
bijian1013
javaibatissqlmap
多个项目中使用ibatis , 和数据库表对应的 sqlmap文件(增删改查等基本语句),dao, pojo 都是由工具自动生成的, 现在将这些自动生成的文件放在一个单独的工程中,其它项目工程中通过jar包来引用 ,并通过"继承"为基础的sqlmap文件,dao,pojo 添加新的方法来满足项
- 精通Oracle10编程SQL(13)开发触发器
bijian1013
oracle数据库plsql
/*
*开发触发器
*/
--得到日期是周几
select to_char(sysdate+4,'DY','nls_date_language=AMERICAN') from dual;
select to_char(sysdate,'DY','nls_date_language=AMERICAN') from dual;
--建立BEFORE语句触发器
CREATE O
- 【EhCache三】EhCache查询
bit1129
ehcache
本文介绍EhCache查询缓存中数据,EhCache提供了类似Hibernate的查询API,可以按照给定的条件进行查询。
要对EhCache进行查询,需要在ehcache.xml中设定要查询的属性
数据准备
@Before
public void setUp() {
//加载EhCache配置文件
Inpu
- CXF框架入门实例
白糖_
springWeb框架webserviceservlet
CXF是apache旗下的开源框架,由Celtix + XFire这两门经典的框架合成,是一套非常流行的web service框架。
它提供了JAX-WS的全面支持,并且可以根据实际项目的需要,采用代码优先(Code First)或者 WSDL 优先(WSDL First)来轻松地实现 Web Services 的发布和使用,同时它能与spring进行完美结合。
在apache cxf官网提供
- angular.equals
boyitech
AngularJSAngularJS APIAnguarJS 中文APIangular.equals
angular.equals
描述:
比较两个值或者两个对象是不是 相等。还支持值的类型,正则表达式和数组的比较。 两个值或对象被认为是 相等的前提条件是以下的情况至少能满足一项:
两个值或者对象能通过=== (恒等) 的比较
两个值或者对象是同样类型,并且他们的属性都能通过angular
- java-腾讯暑期实习生-输入一个数组A[1,2,...n],求输入B,使得数组B中的第i个数字B[i]=A[0]*A[1]*...*A[i-1]*A[i+1]
bylijinnan
java
这道题的具体思路请参看 何海涛的微博:http://weibo.com/zhedahht
import java.math.BigInteger;
import java.util.Arrays;
public class CreateBFromATencent {
/**
* 题目:输入一个数组A[1,2,...n],求输入B,使得数组B中的第i个数字B[i]=A
- FastDFS 的安装和配置 修订版
Chen.H
linuxfastDFS分布式文件系统
FastDFS Home:http://code.google.com/p/fastdfs/
1. 安装
http://code.google.com/p/fastdfs/wiki/Setup http://hi.baidu.com/leolance/blog/item/3c273327978ae55f93580703.html
安装libevent (对libevent的版本要求为1.4.
- [强人工智能]拓扑扫描与自适应构造器
comsci
人工智能
当我们面对一个有限拓扑网络的时候,在对已知的拓扑结构进行分析之后,发现在连通点之后,还存在若干个子网络,且这些网络的结构是未知的,数据库中并未存在这些网络的拓扑结构数据....这个时候,我们该怎么办呢?
那么,现在我们必须设计新的模块和代码包来处理上面的问题
- oracle merge into的用法
daizj
oraclesqlmerget into
Oracle中merge into的使用
http://blog.csdn.net/yuzhic/article/details/1896878
http://blog.csdn.net/macle2010/article/details/5980965
该命令使用一条语句从一个或者多个数据源中完成对表的更新和插入数据. ORACLE 9i 中,使用此命令必须同时指定UPDATE 和INSE
- 不适合使用Hadoop的场景
datamachine
hadoop
转自:http://dev.yesky.com/296/35381296.shtml。
Hadoop通常被认定是能够帮助你解决所有问题的唯一方案。 当人们提到“大数据”或是“数据分析”等相关问题的时候,会听到脱口而出的回答:Hadoop! 实际上Hadoop被设计和建造出来,是用来解决一系列特定问题的。对某些问题来说,Hadoop至多算是一个不好的选择,对另一些问题来说,选择Ha
- YII findAll的用法
dcj3sjt126com
yii
看文档比较糊涂,其实挺简单的:
$predictions=Prediction::model()->findAll("uid=:uid",array(":uid"=>10));
第一个参数是选择条件:”uid=10″。其中:uid是一个占位符,在后面的array(“:uid”=>10)对齐进行了赋值;
更完善的查询需要
- vim 常用 NERDTree 快捷键
dcj3sjt126com
vim
下面给大家整理了一些vim NERDTree的常用快捷键了,这里几乎包括了所有的快捷键了,希望文章对各位会带来帮助。
切换工作台和目录
ctrl + w + h 光标 focus 左侧树形目录ctrl + w + l 光标 focus 右侧文件显示窗口ctrl + w + w 光标自动在左右侧窗口切换ctrl + w + r 移动当前窗口的布局位置
o 在已有窗口中打开文件、目录或书签,并跳
- Java把目录下的文件打印出来
蕃薯耀
列出目录下的文件文件夹下面的文件目录下的文件
Java把目录下的文件打印出来
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
蕃薯耀 2015年7月11日 11:02:
- linux远程桌面----VNCServer与rdesktop
hanqunfeng
Desktop
windows远程桌面到linux,需要在linux上安装vncserver,并开启vnc服务,同时需要在windows下使用vnc-viewer访问Linux。vncserver同时支持linux远程桌面到linux。
linux远程桌面到windows,需要在linux上安装rdesktop,同时开启windows的远程桌面访问。
下面分别介绍,以windo
- guava中的join和split功能
jackyrong
java
guava库中,包含了很好的join和split的功能,例子如下:
1) 将LIST转换为使用字符串连接的字符串
List<String> names = Lists.newArrayList("John", "Jane", "Adam", "Tom");
- Web开发技术十年发展历程
lampcy
androidWeb浏览器html5
回顾web开发技术这十年发展历程:
Ajax
03年的时候我上六年级,那时候网吧刚在小县城的角落萌生。传奇,大话西游第一代网游一时风靡。我抱着试一试的心态给了网吧老板两块钱想申请个号玩玩,然后接下来的一个小时我一直在,注,册,账,号。
彼时网吧用的512k的带宽,注册的时候,填了一堆信息,提交,页面跳转,嘣,”您填写的信息有误,请重填”。然后跳转回注册页面,以此循环。我现在时常想,如果当时a
- 架构师之mima-----------------mina的非NIO控制IOBuffer(说得比较好)
nannan408
buffer
1.前言。
如题。
2.代码。
IoService
IoService是一个接口,有两种实现:IoAcceptor和IoConnector;其中IoAcceptor是针对Server端的实现,IoConnector是针对Client端的实现;IoService的职责包括:
1、监听器管理
2、IoHandler
3、IoSession
- ORA-00054:resource busy and acquire with NOWAIT specified
Everyday都不同
oraclesessionLock
[Oracle]
今天对一个数据量很大的表进行操作时,出现如题所示的异常。此时表明数据库的事务处于“忙”的状态,而且被lock了,所以必须先关闭占用的session。
step1,查看被lock的session:
select t2.username, t2.sid, t2.serial#, t2.logon_time
from v$locked_obj
- javascript学习笔记
tntxia
JavaScript
javascript里面有6种基本类型的值:number、string、boolean、object、function和undefined。number:就是数字值,包括整数、小数、NaN、正负无穷。string:字符串类型、单双引号引起来的内容。boolean:true、false object:表示所有的javascript对象,不用多说function:我们熟悉的方法,也就是
- Java enum的用法详解
xieke90
enum枚举
Java中枚举实现的分析:
示例:
public static enum SEVERITY{
INFO,WARN,ERROR
}
enum很像特殊的class,实际上enum声明定义的类型就是一个类。 而这些类都是类库中Enum类的子类 (java.l