自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

anyway1919的博客

人生就像一场旅行,而我愿意穿梭在美丽的林道间,去发现未知的可能。

  • 博客(30)
  • 资源 (1)
  • 收藏
  • 关注

转载 Android 性能优化

Android 性能优化, Profiler分析介绍

2023-02-04 16:18:41 81

原创 反编译dex遇到的问题

在对一个Apk 的dex使用dex2jar工具将dex转换到jar的过程中,遇到了C:\Users\Administrator\Downloads\dex2jar-2.0\dex2jar-2.0>d2j-dex2jar.bat classes2.dexdex2jar classes2.dex -> .\classes2-dex2jar.jarcom.googlecode.d2j.DexException: not support version. at com.goog

2022-02-10 14:26:38 2174

原创 SystemUI 启动时间监测

在开发车机系统过程中,为了解决SystemUI、Launcher启动时间延迟导致窗口空白影响用户体验问题必须找出各个模块启动时间,才能方便后续进行分析、优

2022-02-09 15:29:18 1837

原创 阿里热更新 Sophix框架接入

前言对于移动开发者来说,在一个需求频繁、版本迭代较快的公司,能够及时解决线上的紧急问题显得尤为重要。现在各种热修复框架的出现,解决这种问题已成为可能。自己造轮子有时不如站在巨人的肩膀上,你说呢?来,我们看看怎么接入的吧。集成1 注册帐号接入Sophix ,首先你要有一个阿里云的账号,进去之后找到移动热修复模块,点击进去后添加应用,填写应用分类、包名等信息后,点击创建的应用...

2018-08-01 20:18:49 1434

原创 (OS 10048)通常每个套接字地址(协议/网络地址/端口)只允许使用一次。 : AH00072: mak e_sock: could not bind to address [::]:443

在学习Python的CGI开发的时候,需要在Apache上配置CGI。但是在启动的时候出现如题的问题,经过翻阅资料最后解决了这个问题。打开dos 窗口,路径定位到你存放Apache的位置,进入到bin目录①执行httpd -k uninstall(前提是操作过httpd -k install了) ,dos窗口会出现Removing the 'Apache2.4' ser

2017-11-06 15:27:14 1999

原创 Python 中可变与不可变对象

Python 中变量没有类型,类型属于对象。可以理解Python中没有值传递,一切皆是对象的引用。Python中的数据对象分为可变对象和不可变数据对象,可变和不可变又是指什么呢?那么Python中哪些是不可变的对象,哪些又是可变的对象呢?划分依据:如果修改一个对象的内容修改前和修改后,该对象在内存地址中的地址并没有发生改变,那么该对象是可变的对象(即对象内容可以改变

2017-10-16 10:17:11 269

原创 Android studio 引用第三方库SlidingMenu方法

前面学习SlidingMenu侧滑菜单的时候,IDE环境用的是Eclipse,现在项目用As后突然发现使用SlidingMenu遇到麻烦了。怎么使用呢?开始:第一步,我们到github官网上面(https://github.com/jfeinstein10/SlidingMenu)下载好的SlidingMenu库,下载解压后应该是下面这个样子:第二步:建立一个Andro

2017-02-18 14:53:20 416

原创 Java设计模式——观察者模式解读

观察者模式(别名:依赖,发布-订阅)定义对象间的一种一对多的依赖关系,当一个对象的状态发生变化时,所有依赖它的对象都得到通知并被自动更新。—以上是GOF对观察者模式高度概括。1.1概述(别觉得厌烦,请细看)在许多设计中,经常设计多个对象对一个对象中的数据变化感兴趣,而且着多个对象都希望跟踪那个特殊对象中的数据变化。例如,某些寻找工作的人对“求职中心”的职业需求信息变化非常的关心

2016-12-29 11:02:02 454

原创 错误Conflict with dependency 'com.google.code.findbugs:jsr305' 解决方法

错误提示:Warning:Conflict with dependency 'com.google.code.findbugs:jsr305'. Resolved versions for app (3.0.1) and test app (2.0.1) differ. See http://g.co/androidstudio/app-test-app-conflict for detail

2016-12-05 20:05:11 14637 7

转载 could not get batchedbridge, make sure your bundle is packaged correctly

今天在学习ReactNative时,研究到ReactNative嵌入到原生app时遇到的一个问题,导致程序跳转的时候就crash,错误日志如下:java.lang.RuntimeException: Could not get BatchedBridge, make sure your bundle is packaged correctlyat com.facebook.react.cxx

2016-10-19 21:59:52 2567

原创 Js函数中的参数

ECMAScript(欧洲计算机制造协会对JS的规范)函数的参数和其他语言中的函数参数有所不同。ECMAScript函数不介意传递进来多少个参数和参数类型。比如,你定义了一个函数接受两个参数,在调用的时候,你可以传一个、两个、三个……都没问题,就算不传,JS解析器也不会报错。ECMASript内部中的参数是用一个数组来表示的。函数接受到的是这个数组,该数组不关心参数个数,通过arguments可以

2016-10-13 14:23:09 418

转载 一、Pull解析器介绍

pull解析类似于SAX\DOM,都是用来解析XML的方法;二、使用Pull解析器读取XML数据模板代码如下:XmlPullParser parser = Xml.newPullParser(); //创建一个PULL解析器parser.setInput(in,"UTF-8"); //读取的编码为UTF-8int event = parse

2015-11-13 20:15:37 536

转载 Map与List和Vector性能比较

Map与List性能比较1.Collection接口与Map的总体框架图 Collection  ├List  │├LinkedList  │├ArrayList  │└Vector  │ └Stack  └Set  Map  ├Hashtable  ├HashMap  └WeakHashMap   

2015-09-20 01:19:32 1101

转载 线程的生命周期

1.线程的生命周期线程是一个动态执行的过程,它也有一个从产生到死亡的过程。(1)生命周期的五种状态   新建(new Thread)当创建Thread类的一个实例(对象)时,此线程进入新建状态(未被启动)。例如:Thread  t1=new Thread();就绪(runnable)线程已经被启动,正在等待被分配给CPU时间片,也就是说此时线程正在就绪队列中

2015-09-18 22:34:28 369

原创 单例懒汉式的多线程操作的安全问题

先看看什么是单例设计模式呢?单例设计模式,也称单态(原子)设计模式。最初起始于建筑行业,建筑行业把建筑中中的一些常见问题进行了归纳总结,并给出了具体的解决方案。(简单理解就是解决问题的模板)单例设计模式 ,是用来解决:程序中的所创建出来的对象只有一个(创建的对象在堆内存中只开辟一个空间)。问题1:只要使用new关键字,就可以创建不同的对象(如何保证只能有一个对象呢?)反向思考:不让其它

2015-09-17 20:09:31 1215

原创 Java中的代码块(静态代码块、构造代码块、局部代码块)

Java中的代码块就是 被{}包含的代码。从类的加载和对象的创建方面考虑,可以有如下分类:1 、静态代码块静态代码块:随着类的加载而加载的代码块   静态代码块的格式:static { //代码}         静态代码块的作用:       在开发中,有一些代码需要在创建对象之前,就已经执行完了,这样的代码就可以书写在静态代码块中 例:在JD

2015-09-17 15:17:43 804

转载 Java中sleep()和wait()的区别

1. 这两个方法来自不同的类,sleep方法属于Thread,wait方法属于Object。2. 最主要是sleep方法没有释放锁,而wait方法释放了锁,使得其他线程可以使用同步控制块或者方法。3. wait, notify和notifyAll只能在同步控制方法(synchronized)或者同步控制块里面使用,而sleep可以在任何地方使用。4. sleep必须捕获异常,而wa

2015-09-17 14:52:58 382

原创 创建多线程的两种方式

API中告诉我们创建线程有2种方式:第一种:1、定义一个类继承Thread2、子类复写Thread类中的run方法3、创建子类对象(子类就是一个线程类)4、启动子类对象/* * 演示创建线程的第一种方式 *///定义子类,继承Threadclass Demo extends Thread{ //复写run方法 public void run(){ fo

2015-09-17 13:21:39 2255

原创 函数中递归的变现形式

什么是递归呢?简单地说,就是函数自身调用自身的过程!让我们看一个简单的例子,在我们初学Java的时候,老师要求我们怎么去获取十进制整数的二进制表现形式,如:求6的二进制形式,那么一开始我们写的代码可能是这样的:public static void toBin(int num){ while(num>0){ System.out.print(num%2); num = num /

2015-09-16 11:21:41 580

原创 IO技术使用时需要的明确

参考传智播客--毕向东老师IO就是实现文件的读写,既然读,我们就必须要知道我们读取的数据存储在哪里,可以理解为数据的源头。既然需要写数据,我们也需要明确将数据写在什么地方,也就是需要明确目的。当然在操作数据的过程中更需要了解操作的数据类型,是否为存文本文件,如果是就用字符流相关的读写技术,如果不是就用字节流相关的技术。当体系明确后就要明确使用具体的对象,原设备是什么,目的设备是什么。通过两

2015-09-15 01:26:34 400

原创 装饰类设计模式

装饰类是什么概念呢?如果已有的对象的功能不够优化,我们就可以定义类,将已有的对象传入,基于已有的功能,并提供加强的功能。那么该类就成为装饰类。装饰类通常会通过构造方法接受被装饰的对象。并基于被装饰的对象的功能来通过加强功能。首先我们先来看一个例子://早期的人的吃饭方式class Person{ public void chifan(){ System.out.println("吃饭"

2015-09-13 20:10:51 1778 1

原创 字符流缓冲区实现文件的读取

昨天谈了字符流的怎么拷贝文件,特别是以FileReader和FileWritter来实现文数据的复制为例说明了字符数据的读写功能,我们谈了在实现字符数据拷贝的时候使用的两种方法,一种是read()一次读取一个文件,和read(char []cbuf,int offset, int length)一次读取字符数组的一部分。第二种方式虽然提高了效率,但是对于系统底层的资源来说还是要不断的做读写的切

2015-09-13 12:46:20 1222

原创 字符流实现文件数据的拷贝

Java中的IO流就是输入输出流,也成为读写流,实现数据的读写。处理字节数据的称作字节流,其中有关的两个抽象基类:InputStream,OutputStream;处理字符数据的称为字符流,下面也有两个抽象基类:Reader,Writter,由这四个类派生出来的子类名称都是以其父类名作为子类名的后缀。•如:InputStream的子类FileInputStream。•如:Reader的子类

2015-09-12 23:59:44 868

原创 TreeSet集合两种排序方式

在使用TreeSet集合时,存在两种排序:1、  自然排序。 存储的元素自身必须实现Comparable接口,并重写接口中的compareTo方法2、  比较器排序(强制排序) 。 使用Comparator对象强制对要存储的元素进行排序。需要在创建TreeSet集合时,要构造函数中指定比较器对象            让我们首先看看TreeSet集合的自然排序方式。看一个例子:

2015-09-09 12:03:05 846

原创 HashSet集合存储自定义对象细节

在说HashSet集合怎么存储自定义对象细节之前,先看看HashSet类的特点吧。通过查阅API,发现HashSet集合:1、  HashSet集合底层使用哈希表结构2、  HashSet集合中的存储的元素是无序的3、  因为继承了Set接口,所以不能存储重复元素4、  允许存储null元素,但是只能有一个5、 性能:查询元素和存储不重复元素的效率比较高既然,Has

2015-09-08 23:31:15 828

原创 Java中重载与重写的区别

重载(overload)的含义:在同一个类中,允许存在一个以上的同名函数,只要它们的参数列表(参数个数,参数类型)不同即可,这种情况就叫做重载。重载的好处:便于阅读,优化了程序设计。 总结:        函数的功能一样,仅仅是参与运算的未知内容不同时,可以定义多函数,却使用统一函数名称,这样方便阅读。在调用时,虚拟机通过参数列表的不同来区分同名函数。重载与返回值类型无关,

2015-09-08 00:55:52 551

原创 Java中的容器

容器在程序中具有最重要的角色,具有存储数据和传递数据的功能,对容器赋值正是对内存中一个地址单元赋值。我们通过容器可以对存储的或是传递的数据进行操作。这也是Java面向对象思想的一种体现,就如生活中的我们的用一些袋子、包裹去存储打包物品,满足我们对物品操作,下面笔者就谈谈Java中的一些容器。1,变量变量就如同我们生活中的小袋子,把我们输入的字符串或数值装起来,用的时候再取出来。变量可以保存

2015-09-07 22:38:48 488

原创 Java中面向对象思想分析

Java是一门完全面向对象的语言,对于初学者说起面向对象可能理解煞是费力。那么什么是对象,什么是面向对象呢?笔者在这就谈谈吧,也算是自己加深理解。也怪自己当初理解的很困难,就算在这加深印象吧,当然对于初学者也算是抛砖引玉呢!    参考传智播客唐文杰老师编程界有两种编程思想,一种是面向过程的编程,一种是面向对象的编程。面向过程: 就是面向程序中的函数。在使用面向过程编写程序时,会分

2015-09-07 10:06:26 1114

原创 TCP客户端和服务器介绍

TCP:传输控制协议,面向有连接的协议,需要经过三次握手(就是客户端Socket和服务器ServerSocket之间通信需要在连接通道中进行数据的传输)。客户端主动地去服务器发送数据做出请求,服务器通过accept方法去获得客户端对象,从而做出具体的相应。为了更好地说明它们之间的通信模型,加深笔者的理解,特意分享了以下代码:

2015-09-05 23:28:51 998

原创 UDP协议通信简单代码分析

UDP:面向无连接的协议,用户的数据报文包协议。Java中使用UDP协议进行网络编程,需要2个对象:1,DatagramSocket:代表的是两个通信的端口(可以看做运送货物大两个码头,港口);API中对DatagramSocket其定义:用来表示 发送和接收数据报包的套接字。在这个类中有两个构造函数DatagramSocket():创建一个基于UDP协议的发送端或者接收端端点,但是这

2015-09-02 23:28:57 976

fastjson-1.1.70.android.jar

fastjson-1.1.70.android.jar,安卓专用fastjson解析jar包

2018-08-31

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除