- 博客(79)
- 资源 (2)
- 问答 (1)
- 收藏
- 关注
原创 一段数据在网络中的流动过程
一段数据在网络中的流动过程应用层:包括的协议有HTTP(web文档请求和传送)、SMTP(电子邮件报文的传输)和FTP(两个端系统之间的文件传送)。运输层:包括的协议有 TCP和UDP。网络层:包括的协议有IP协议,和路由选择协议。链路层:简述一下,把链路层的分组称为帧,链路层和痛惜链路相关,有很多协议,如以太网、wifi和电缆接入网的DOCSIS协议。物理层:物理层传输的是比特流,但也...
2019-01-28 15:47:43 2977
原创 BaseRecyclerViewAdapterHelper的使用姿势问题
1.此控件再第一次进入界面时会自动回调上拉加载的接口,并显示底部disableLoadMoreIfNotFullPage可以使用上面的方法,但直接使用会有问题,根据 issues,总结出如下使用方法首先再oncreate 禁止掉上拉刷新,方法如下mAdapter.setEnableLoadMore(false);然后在请求成功以后,代码如下@Overri
2017-12-05 15:00:03 5662 1
原创 android ndk Hello World
打包成.so文件的方式,cmake 使用ndk-build 打包 需要在app下build文件下配置 sourceSets.main { jni.srcDirs = [‘libs’] // This prevents the auto generation of Android.mk } 并且配置Android.mk 和Application.mk 并在gradle.prop
2017-07-21 16:35:37 475
转载 android 项目中so 文件的问题
1.指定加载指令集包下的so文件引用:http://blog.csdn.net/chichengjunma/article/details/53815299React Native项目在64位Android手机上运行,会提示"/data/data/com.xxx.xxx/lib-main/libgnustl_shared.so" is 32-bit instead of 6
2017-04-05 13:03:04 4374
原创 android studio 构建过程中的各种问题 eclipse 项目导入android studio 的各种问题
如果你项目中依赖的library过多 (在as中是依赖module),并且library中也有很多的jar文件,导入as中依赖module和module之间就有可能存在jar冲突比如这样Error:Execution failed for task ':huanWei_Trunk:transformResourcesWithMergeJavaResForDebug'.> com.and
2017-03-28 18:21:18 564
原创 Java WebRestApp后台(一):第一个java web项目(从创建到返回第一个json字符串)
具体请看这个servlet教程:http://www.runoob.com/servlet/servlet-tutorial.html声明:本系列文章只以介绍servlet为主(因为是做app后台),不介绍css,js/html等web开发的常用技术的使用1.创建项目(IDE:myeclipse)首先File-->New一个Web Project项目。结构目录如下:web.xml文件:每一个...
2017-01-16 21:56:23 2071
原创 Android 常用类库
1.解决屏幕适配的类库google提供的百分比自动适配列库android-percent-support-lib-sample。(推荐)2.图片加载类库Google提供的Glide类库。(推荐)picassoxutils(这个类库把注解、网络请求、图片加载、数据保存等都继承了在一起)3.数据保存类库greendao(个人感觉最好用的数据库保存类库:推荐)xuti
2016-11-11 10:47:23 505
转载 文章标题
w导语为了防止误导,提前提示:泛型就是参数化类型(其他语言可能不叫泛型而叫参数化类型)。一般的方法类和方法只能使用具体的类型:基本类型或自定义的类。如果编写应用于多种类型的代码或方法,就会有限制。Java中的泛化机制:“可以实现类似于泛型的功能” 多态(继承)让方法或代码接受基类作为参数。多态(接口)让方法或代码接受一个接口作为参数但考虑到除了**final类不能扩展**,其他任何类都可
2016-09-21 07:50:27 320
转载 马克飞象
欢迎使用马克飞象@(示例笔记本)[马克飞象|帮助|Markdown]马克飞象是一款专为印象笔记(Evernote)打造的Markdown编辑器,通过精心的设计与技术实现,配合印象笔记强大的存储和同步功能,带来前所未有的书写体验。特点概述:功能丰富 :支持高亮代码块、LaTeX 公式、流程图,本地图片以及附件上传,甚至截图粘贴,工作学习好帮手;得心应手 :简洁高效的编辑器,提供桌面客户端以及离线C
2016-09-14 07:42:57 1027
转载 第十四章 类型信息RTTI Class instanceof isInstance
1.RTTI运行时类型信息使你能够在程序运行时发现和使用(比如对象的具体类)类型信息。RTTI主要有两种形式传统的RTTI一种是在编译时知道了所有的类型信息,这属于静态绑定。另一个种是“反射机制”,允许我们在运行时发现和使用类(对象的具体类)的信息。这属于动态绑定(多态、运行时绑定)。面向对象的基本目的是:让代码只操纵对基类的引用,这样即使(从shape)派生出一个新类来也不会
2016-09-12 13:41:14 514
转载 第十二章 通过异常处理错误 基本使用
1.创建自定义异常定义自定义异常,必须从已有的异常类继承,最好选择意思相近的异常类继承。System.err 将错误发送给标准错误流,而System.out会重定向。class MyException extends Exception{ public MyException(){} public MyException(String msg){super(msg);}}p
2016-09-06 20:40:25 742
转载 第十三章 字符串 正则表达式
导语正则表达式是一种强大而灵活的文本处理工具。使用正则表达式,我们能以编程的方式,构造复杂的文本模式,并对输入的字符串进行搜索。一旦匹配这些模式的部分,就可以对它们进行处理。正则表达式提供了一种完全通用的方式,能够解决各种字符串处理相关的问题:匹配、选择、编辑以及验证。Java中的字符串操作集中于String、StringBuffer、StringTokenizer类。与正则表达式相比,它
2016-09-06 10:05:15 1329
原创 android 在类的作用域初始化会占用一个方法位 65535问题
public class MainActivity extends Activity { //比如下面这样 会占一个方法位 private int type = 0; //下面这样不会 , 在方法域初始化 private int type2; @Override protected void onCreate(Bundle savedInstanceState) { super.
2016-09-03 10:56:04 287
转载 第十三章 字符串 格式说明符 异常补充
1.不可变StringString 类中每一个看起来会修改String值的方法都会重新创建一个全新String对象(原来创建的String对象并未改变),以包含修改后的字符串内容。public class Immutable { public static String upcase(String s){ return s.toUpperCase(); } public st
2016-09-02 21:25:59 1155
转载 第十二章 异常处理 概念和基本使用
1.为什么要有异常处理Java的基本理念是结构不佳的代码不能运行。why:发现错误的理想时机是在编译阶段,余下的问题在运行期间解决,这就需要错误源能通过某种方式,把适当的信息传递给某个接受者【异常处理机制指导如何传递】——该接受者将指导如何正确处理这个问题(catch块)。2.异常处理机制是什么,作用Java使用异常来提供一致的错误报告模型,使得构件(报告模型)能够与客户端代码
2016-08-29 22:10:32 663
转载 第十一章持有对象之容器的使用
1.添加一组元素(ArrayList.....子类的简单使用)public class AddingGroup { public static void main(String[] args) { Collection collection = new ArrayList(Arrays.asList(1,2,3,4,5)); Integer[] moreInt = {6
2016-08-28 13:35:06 635
转载 第十一章 持有对象 导读
导读:如果一个程序只包含固定数量且生命周期都是已知的对象,那么这是一个非常简单的程序。问题所在:通常程序总是根据运行时才知道的某些条件去创建对象。在此之前,不会知道所需对象的数量,甚至不知道确切的对象类型。为了解决这个问题,需要在任意时刻和任意位置创建任意数量的对象。所以就不能依靠引用来持有每一个对象,因为数量可能会很多。java有多种方式保存对象(应该是对象的引用)。例如数组,
2016-08-26 14:24:46 403
转载 第十章 内部类 内部类的作用、闭包、内部类继承、覆盖重写内部类、局部内部类、内部类标识符
1.为什么需要内部类内部类继承自某个类或者实现某个接口,内部类可以访问创建它的外部类的对象或参数资源。内部类能独立的实现某个接口,无论外围类是否实现了这个接口。内部类使多重继承的解决方案变得更加完善。下面的代码体现内部类实现多重继承,实现多个接口interface A{}interface B{}//实现两个接口的单一类class X implements A,B{}
2016-08-24 21:51:13 2090
转载 第十章 内部类 内部类和嵌套类
1.内部类访问外围类的成员方法内部类可以访问其外围类的方法和字段,就像他们自己的一样。当某个外围类的对象创建一个内部类对象时,此内部类对象必定会秘密地捕获一个指向那个外围类对象的引用。在访问此外围类成员的时候,就用那个引用去访问外围类的成员,内部类对象只能在与其外围类的对象相关联的时候才能被创建。编译器会处理这些细节。2.使用.this和.new.this生成一个外
2016-08-22 22:10:38 679
转载 第九章 接口和抽象类 接口详解
1.完全解耦一个方法 void next(Processor p),如果p仅仅是一个父类 或抽象类的话,那传入这个方法的p只能是继承晕Processor的子类或Processor类,其他的类则不能传入,而如果是Processor是一个接口的话,那传入其中的类只要实现这个接口就可以啦,这个类就可以留出空间去继承其他的类了,也可以去实现其他接口,这个方法的耦合性就低了很多。让方法接受接
2016-08-21 15:49:32 391
转载 第九章 接口和抽象类 基本使用
导语:接口和内部类为我们提供了一种将接口和实现分离的更加结构化的方法。Java关键字这个事实表明人们认为这些思想很重要,以至于要提供对它们的直接支持。1.抽象类第八章中的Instrument乐器类中直接调用其方法会出错。因为Instrument的目的是为实现它的子类提供一个通用的接口。目的是不同的子类以不同的方式实现此接口。通用接口建立起一种基本形式,表示所有子类的共同部分
2016-08-21 11:43:31 420
转载 第八章 多态总结 协变返回类型 向下转型 和运行时类型识别继承中 is-a 和 is-like-a及子类父类的方法调用(ClassCastException)
1.协变返回类型表示子类中被覆盖的方法可以返回父类方法的返回类型的某种子类类型。class Grain { public String toString() { return "Grain"; }}class Wheat extends Grain { public String toString() { return "Wheat"; }}class Mi
2016-08-20 12:57:24 483
原创 android studio 设置大全
android studio调试快捷键1.设置按下快捷键出现list列表选择 设置里搜class Name Completion 修改此项快捷键(原:ctrl+alt+space)2.自动补全时list列表选项 (原 ctrl+ space elipse为alt+/)注:1与2容易混淆修改位置 Main menu --> Code --> Completi
2016-08-19 09:52:55 796 1
转载 第八章 多态 成员对象的清理工作。引用计数构造器内部多态行为,初始化(真)
1.清理一个对象拥有自己的成员对象,并且知道他们应该存活多久,因此一个对象可以调用其特殊方法对其成员对象进行释放。然而,如果这些成员对象存在于其他一个或多个对象共享的情况,问题就复杂了,这个时候需要使用引用计数来跟踪仍旧访问着共享对象的对象数量。下面的代码可以清楚的说明这个问题的解决办法,也是引用计数法class Shared{ private int refcount = 0;
2016-08-18 23:07:00 263
转载 第八章 多态 多态的优点与作用 和缺陷
1.可扩展性多态是一项让程序员“将改变的事物和未变的事物分离开来的重要技术”。改变的事物可能是添加了新的子类或父类和子类添加了新的方法,未变的事物可能是对基类的调用如 tune(Instrument i)方法调用,传入i的可能是个子类,而且可能会不断继承而产生新的子类但都不能影响这个方法,这个方法完全忽略周围的改变,这就是改变的事物和未变的事物分离开来。一个良好的OOP系统都遵循t
2016-08-18 21:05:10 581
转载 第八章.多态 什么是多态
导语输入错误的数字,如何得到正确的结果呢 方法调用tune(Instruments i) tune(wind)多态通过分离做什么和怎么做,从另一个角度讲接口和实现分离开来。接口就是公开调用的方法,而实现就是具体的方法,父类(或抽象类,或inteface接口)来声明做什么,子类来实现怎么做。封装 通过合并特征和行为来创建新的数据类型。实现隐藏则通过将细节“私有化”把接口和实现分离开来。
2016-08-18 19:27:11 500
转载 第七章.复用类 初始化和类的加载 总结
1.java的类加载过程每个类编译代码都存在于一个独立的文件中,该文件只在需要使用该程序代码的时候才会被加载。一般来说“类的代码在初次使用时才加载”,通常是指加载发生于创建类的第一个对象时,当访问static域或static方法时,该代码文件也会被加载。加载过程:类加载器开始启动并找出子类中的编译代码,在.class文件中,加载过程中发现他有一个父类,由extends关键字得知,于是进行加
2016-08-16 21:53:29 279
转载 第七章.final关键字和所说的接口
导语:java中的final关键字的含义存在着细微的区别,但通常指“这是不可改变的”.不想改变可能处于两种理由:设计和效率,两者相差甚远,所以可能被误用 final可以修饰 数据、方法和类。1.final 关键字修饰的数据有时数据恒定不变是很重要的。一个永不改变的编译时变量一个在运行时被初始化的值而不希望它被改变。编译时常量必须是基本数据类型,并且以final
2016-08-16 21:14:50 620
转载 第七章:复用类(继承和组合)向上转型Override代理、构造器和清理
导读:复用类包含组合和继承两种方式,多用组合,少用继承组合:新的类由现有对象所组成,包含现有类的对象,这种方式仅是复用了现有程序代码中的功能,而非它的形式。继承:按照父类的类型来创建新类(子类)。子类无需改变父类的形式,只需要扩展功能方法就可以。编译器可以处理好子类和父类的关系。继承是面向对象程序设计的基石之一。1.组合将先有类的对象置于新类中就可实现组合。基本类型可以直接
2016-08-15 22:23:52 379
转载 第五章.初始化和清理 初始化可变参数列表
导语:java尽力保证所有变量在使用前都能得到恰当的初始化1.成员变量初始化局部方法中的局部变量:Java以编译时错误的形式来贯彻这种保证。如果局部变量没有初始化,那么就会得到一条错误或警告的提示。当然,编译器也可以为i赋一个默认值,但是未初始的局部变量更有可能是程序员的疏忽,所以采用默认值初始化反而会掩盖这种失误。类的数据成员(字段)是基本类型:每个数据成员都会保证有一个初始
2016-08-14 18:17:14 325
转载 第五章.初始化和清理 终结处理和垃圾回收
导论:将一个对象初始化后就“弃之不顾”的做法并非总是安全的。虽然java用垃圾回收器回收无用对象占用的内存资源。但也有特殊情况,假定对象并非使用new获得了一块“特殊”的区域,由于垃圾回收器只知道释放那些经由new分配的内存,所以他不知道该怎样释放这块“特殊”的内存。1.finalize()此方法出现的原因:回收除以new方法创建对象方式以外的方式分配的内存
2016-08-14 17:10:53 464
转载 第五章.初始化与清理 this static 构造器
1.导读不要在代码中调用gc,因为没调用一次gc,java虚拟机就会在不定的时间执行一遍清理工作,而在这个过程中,所有的线程都必须暂停,等待清理线程执行完毕。java中也向c++一样引入了构造器的概念,并额外提供了“垃圾回收器”。对于不再使用的内存资源卖垃圾回收器能将其自动释放。2.构造器java 用构造器来保证对象的初始化。构造器的命名与类名相同。当new一个对象时,将会
2016-08-14 15:23:43 332
转载 第三章.操作符
导语:在最底层,Java中的数据是通过使用操作符来操作的。1.Java操作符的定义操作符接受一个或多个参数,并生成一个新的值,可能是boolean。+、-、*、/、和赋值号(=)的用法与其他编程语言相同。几乎所有的操作符都只能操作基本类型。例外的操作符是“=”、“==”、“!=”,这些操作符能操作所有的对象String 类支持“+”和+=’。2.优先级当一个表达式中
2016-08-11 21:29:00 363
原创 二进制的位数,字节、字符
二进制位数,也就是表达一个其他类型的数所需要的二进制数有几个,确定整数二进制表示中第一个1 的出现位置。例如: 2的二进制为 10,占用2个二进制位 3的二进制为 11,占用2个二进制位 4的二进制为 100,占用3个二进制位再例如,int型是32位,什么意思呢,也就是所它最大可以占32个2进制位 也就是100000000000000000000000000000,它的最高位在第3
2016-08-11 21:23:02 33344 1
转载 第四章.控制执行流程
1.导语程序必须在执行过程中控制它的世界,并作出选择。在java中,要使用执行控制语句来作出选择。java使用了C的所有的流程控制语句,关键字如 if-else、while、do-while、for、return、break以及选择语句switch,java并不支持got语句,它是解决某些特殊问题最便利的方法。在java中,仍然可以进行类似goto那样的跳转,但有很多的限制。2.tru
2016-07-31 21:04:22 416
android 二维码生成和长按识别 goole.ZXing
2016-04-26
eclipse Android项目导入AS,如果原eclipse中有多个分支
2017-03-29
TA创建的收藏夹 TA关注的收藏夹
TA关注的人