上一页 1 ··· 4 5 6 7 8 9 10 11 12 ··· 15 下一页
摘要: 1.单一职责原则 Single Respoonsibility Principle(SRP) --封装 2.开闭原则 Open Close Principle(OCP)--对扩展开放,对修改封闭 3.里式替换原则 Liskov Substitution Principle(LSP)--所有引用基类的 阅读全文
posted @ 2017-10-30 11:02 嘉禾世兴 阅读(265) 评论(0) 推荐(0) 编辑
摘要: No1: 实现语言无关性的基础仍然是虚拟机和字节码存储格式,虚拟机只与Class文件这种特定的二进制文件格式所关联,并不关心Class的来源是何种语言。 No2: Class文件是一组以8位字节为基础单位的二进制流,整个Class文件本质上就是一张表 No3: 常量池可以理解为Class文件中的资源 阅读全文
posted @ 2017-10-23 10:21 嘉禾世兴 阅读(207) 评论(0) 推荐(0) 编辑
摘要: 效果图: 需求: 刚进入视频播放页时,屏幕中间有加载进度条 视频播放过程中,视频界面不动了,正在缓冲时,屏幕中间有加载进度条 这里有些坑要注意: 1.本来我是想通过MediaPlayer.setOnBufferingUpdateListener得到缓冲进度和播放进度比较来判断是否显示,结果发现缓冲进 阅读全文
posted @ 2017-10-20 17:54 嘉禾世兴 阅读(1041) 评论(0) 推荐(0) 编辑
摘要: No1: Java在内存分配时会涉及到以下区域: 寄存器:我们在程序中无法控制 栈:存放基本类型的数据和对象的引用,但对象本身不存放在栈中,而是存放在堆中 堆:存放用new产生的数据 静态域:存放在对象中用static定义的静态成员 常量池:存放常量 非RAM存储:硬盘等永久存储空间 No2: 栈中 阅读全文
posted @ 2017-10-19 17:37 嘉禾世兴 阅读(2486) 评论(0) 推荐(0) 编辑
摘要: No1: 虚拟机是指通过软件模拟的具有完整硬件系统功能的、运行在一个完全隔离的环境中的完整计算机系统。 No2: Java虚拟机由如下五个部分组成:一组指令集、一组寄存器、一个栈、一个无用单元收集堆、一个方法区域。 No3: Java虚拟机中有4种寄存器: 1)pc:Java程序计数器 2)opto 阅读全文
posted @ 2017-10-13 16:42 嘉禾世兴 阅读(623) 评论(0) 推荐(0) 编辑
摘要: No1: 操作系统层包括各种驱动程序:显示、Flash内存、照相机、音频、WiFi、键盘、蓝牙、Binder IPC、能源管理。 各种库和Android运行环境大多是用C和C++实现的。 Android运行环境主要指虚拟机技术 Dalvik。 Java VM是基于栈的虚拟机,而Dalvik是基于寄存 阅读全文
posted @ 2017-10-13 14:25 嘉禾世兴 阅读(624) 评论(0) 推荐(0) 编辑
摘要: 需求:输入密码必须为字母、数字或特殊字符 方法一: 方法二: 方法一是将每个字符转为ASCII码,方法二是将每个字符匹配正则 阅读全文
posted @ 2017-10-12 16:36 嘉禾世兴 阅读(289) 评论(0) 推荐(0) 编辑
摘要: No1: 线程安全:当多个线程访问一个对象时,如果不用考虑这些线程在运行环境下的调度和交替执行,也不需要进行额外的同步,或者在调用方进行任何其他的协调操作,调用这个对象的行为都可以获得正确的结果,那这个对象就是线程安全的。 No2: java语言中各种操作共享的数据分为以下5类:不可变、绝对线程安全 阅读全文
posted @ 2017-10-11 17:49 嘉禾世兴 阅读(157) 评论(0) 推荐(0) 编辑
摘要: No1. No2. java内存模型规定了所有的变量都存储在主内存中(Main Memory)中 每条线程还有自己的工作内存(Working Memory) 线程的工作内存中保存了被该线程使用到的变量的主内存副本拷贝,线程对变量的所有操作(读取、赋值等)都必须在工作内存中进行,而不能直接读写主内存中 阅读全文
posted @ 2017-10-11 16:16 嘉禾世兴 阅读(275) 评论(0) 推荐(0) 编辑
摘要: 效果图: 需求:每个item的文字都有两部分是连接可点击 当然需要用到SpannableString和ClickableSpan。 注意: 1.继承ClickableSpan用来改链接颜色和去掉下划线 2.文字的每个部分的链接都要单独生成一个SpannableString和ClickableSpan 阅读全文
posted @ 2017-10-11 10:39 嘉禾世兴 阅读(484) 评论(0) 推荐(0) 编辑
摘要: 效果图: 1.顶部会悬浮章的部分 2.第二章上滑会推挤第一章 3.第二章下拉会带出第一章 4.并不是所有时候都有悬浮部分(为什么这条标红,因为市面上几乎所有的悬浮都是必须存在且在顶部,害的我必须自己写) 如果你要的只是和IOS通讯录相似的效果,即总有一行悬浮在顶部,百度stickyItemDecor 阅读全文
posted @ 2017-09-22 15:53 嘉禾世兴 阅读(572) 评论(0) 推荐(0) 编辑
摘要: No1: 物理机的执行引擎是直接建立在处理器、硬件、指令集合操作系统层面上的,而虚拟机的执行引擎则是由自己实现的,因此可以自行制定指令集与执行引擎的结构体系,并且能够执行那些不被硬件直接支持的指令集格式。 No2: 执行引擎在执行java代码的时候可能会有解释执行(通过解释器执行)和编译执行(通过即 阅读全文
posted @ 2017-09-18 14:50 嘉禾世兴 阅读(231) 评论(0) 推荐(0) 编辑
摘要: No1: 程序计数器、虚拟机栈、本地方法栈3个区域随线程而生,随线程而灭:栈中的栈帧随着方法的进入和退出而有条不紊的执行着出栈和入栈操作。每一个栈帧中分配多少内存基本上市在类结构确定下来时就已知的,因此这几个区域的内存分配和回收都具备确定性,在这几个区域内就不需要过多考虑回收的问题,因为方法结束或者 阅读全文
posted @ 2017-09-13 15:53 嘉禾世兴 阅读(194) 评论(0) 推荐(0) 编辑
摘要: No1: java虚拟机所管理的内存将会包括以下几个运行时数据区域 1.方法区 2.虚拟机栈 3.本地方法栈 4.堆 5.程序计数器 No2: 程序计数器: 程序计数器(Program Counter Register)是一块较小的内存空间,它的作用可以看做是当前线程所执行的字节码的行号指示器。在虚 阅读全文
posted @ 2017-09-13 09:57 嘉禾世兴 阅读(200) 评论(0) 推荐(0) 编辑
摘要: 效果图: 1.切换横竖屏 2.重力感应切换横竖屏 3.判断网络状态 videoview布局: 网络状态监听广播 提示对话框 重力感应 有几个需要注意的坑 1.ijkVideoView的setVideoPath方法是直接播放的,但是setOnPreparedListener准备是需要时间的,如果4G进 阅读全文
posted @ 2017-08-30 15:55 嘉禾世兴 阅读(584) 评论(0) 推荐(0) 编辑
摘要: 布局: 风格: selector java类: 调用: 封装起来更好用 阅读全文
posted @ 2017-08-30 10:31 嘉禾世兴 阅读(515) 评论(0) 推荐(0) 编辑
摘要: 题目:建造两个产品,这两个产品都有两个部件 打印结果: 其实,Action类中 director.construct(b1); 实际调用的就是 b1.buildPartA(); b1.buildPartB(); Director是建造的指挥者,通过父类调用子类实际的操作。 阅读全文
posted @ 2017-08-25 16:34 嘉禾世兴 阅读(169) 评论(0) 推荐(0) 编辑
摘要: 题目:通过购买基金来购买股票A、B、C 打印结果: 其实很简单,就是将StockA、StockB、StockC封装起来,我们只要调用Fund的API就可以了 阅读全文
posted @ 2017-08-25 15:42 嘉禾世兴 阅读(120) 评论(0) 推荐(0) 编辑
摘要: 接上篇JAVA编程思想读书笔记(四)--对象的克隆 No1: daemon Thread(守护线程) 参考http://blog.csdn.net/pony_maggie/article/details/42441895 daemon是相于user线程而言的,可以理解为一种运行在后台的服务线程,比如 阅读全文
posted @ 2017-08-25 15:10 嘉禾世兴 阅读(670) 评论(0) 推荐(0) 编辑
摘要: 题目:相同的两份试卷,甲乙两个人做,答案不同 打印结果: 这其实就是通过面向对象的三大特性实现代码的复用,使重复代码降到最低 阅读全文
posted @ 2017-08-24 17:21 嘉禾世兴 阅读(158) 评论(0) 推荐(0) 编辑
摘要: 题目:编写简历,复制三份,做相应的修改 以下为深层复制 打印结果 一般在初始化的信息不发生改变的情况下,克隆是最好的方法。这既隐藏了对象创建的细节,又对性能是大大的提高。 阅读全文
posted @ 2017-08-24 16:43 嘉禾世兴 阅读(106) 评论(0) 推荐(0) 编辑
摘要: 题目:大学生和志愿者学雷锋,轮流去给孤寡老人送爱心 工厂类和方法类都要分别继承,工厂类用于生成新的对象。如果再加一个警察类,只需要下面这样做就可以了: 不需要动服务端,只需要在客户端Test中增加new PoliceFactory()就可以了 工厂方法模式和简单工厂模式的区别: 简单工厂模式只有一个 阅读全文
posted @ 2017-08-24 16:02 嘉禾世兴 阅读(115) 评论(0) 推荐(0) 编辑
摘要: 题目:一个男孩让另一个男孩代理去送一个女孩礼物 打印结果: 原理就是: 1.Pursuit和Proxy都实现了GiveGift接口,但Proxy中实际调用的也是Pursuit的方法 2.Proxy的构造函数也是为了生成Pursuit的对象 3.所以在Action中,我们只看到了Proxy在忙来忙去, 阅读全文
posted @ 2017-08-24 15:02 嘉禾世兴 阅读(152) 评论(0) 推荐(0) 编辑
摘要: 接上篇JAVA编程思想读书笔记(三)--RTTI No1: 类的克隆 输出结果 若想克隆一个类,必须继承Cloneable,并且重写clone方法 g()演示的是按引用传递,它会修改外部对象,并返回对那个外部对象的一个引用。 f()是对自变量进行克隆,所以将其分离出来,并让原来的对象保持独立,甚至能 阅读全文
posted @ 2017-08-23 17:32 嘉禾世兴 阅读(320) 评论(0) 推荐(0) 编辑
摘要: 题目:给一个人“小王”搭配衣服和裤子 特别注意这段 一层套一层,代表功能的拓展 装饰者模式是利用setComponent进行包装的 另外,如果只有一个ConcreteComponent类而没有抽象的Component类,那Decorator类可以是ConcreteComponent的一个子类。 如果 阅读全文
posted @ 2017-08-22 17:51 嘉禾世兴 阅读(241) 评论(0) 推荐(0) 编辑
摘要: 接上篇JAVA编程思想读书笔记(二) 第十一章 运行期类型判定 No1: 对于作为程序一部分的每个类,它们都有一个Class对象。换言之,每次写一个新类时,同时也会创建一个Class对象(更恰当的说,是保存在一个完全同名的.class文件中)。在运行期,一旦我们想生成那个类的一个对象,用于执行程序的 阅读全文
posted @ 2017-08-22 14:32 嘉禾世兴 阅读(292) 评论(0) 推荐(0) 编辑
摘要: 接上篇JAVA编程思想读书笔记(一) 第八章.对象的容纳 No1: java提供了四种类型的集合类:Vector(矢量)、BitSet(位集)、Stack(堆栈)、Hashtable(散列表) No2: 为什么不能将基本数据类型置入集合里? 首先,集合的存在就是为了方便对多个对象的操作才出现的,集合 阅读全文
posted @ 2017-08-22 10:15 嘉禾世兴 阅读(223) 评论(0) 推荐(1) 编辑
摘要: 题目:商场做活动,有三种:正常收费、满300返100、打8折 效果图: 下面是策略和工厂结合 布局 arrays.xml ContextStrategy是策略类,它创建对象且调用策略,判断条件不要写在StartegyActivity(客户端) 简单工厂模式和策略模式的区别: 简单工厂模式通过多态能得 阅读全文
posted @ 2017-08-21 17:44 嘉禾世兴 阅读(215) 评论(0) 推荐(0) 编辑
摘要: 类图分三层: 第一层:类的名称,如果是抽象类,就用斜体显示 第二层:类的特性,通常是字段和属性 第三层:类的操作,通常是方法或行为 接口图:第一行是接口名称,第二行是接口方法 继承:用空心三角形+实线 实现:用空心三角形+虚线 关联:用实线+箭头 聚合:用空心的菱形+实线箭头(包含但不是其中一部分) 阅读全文
posted @ 2017-08-21 15:03 嘉禾世兴 阅读(441) 评论(0) 推荐(0) 编辑
摘要: 题目:用java实现一个简单的计算器功能(用户从控制台输入)计算两个数和一个运算符号 Optioner是父类,根据情况不同,通过OptionerFactory工厂得到对应的实际操作类 Optioner封装了两个参数和操作符,加减乘除类继承了Optioner,OptionerFactory中多态得到了 阅读全文
posted @ 2017-08-21 14:47 嘉禾世兴 阅读(175) 评论(0) 推荐(0) 编辑
摘要: 第二章 一切都是对象 No1: 程序运行时,我们最好对数据保存到什么地方做到心中有数。特别要注意的是内存的分配。有六个地方都可以保存数据: (1) 寄存器。这是最快的保存区域,因为它位于和其他所有保存方式不同的地方:处理器内部。然而,寄存器的数量十分有限,所以寄存器是根据需要由编译器分配。我们对此没 阅读全文
posted @ 2017-08-15 09:44 嘉禾世兴 阅读(288) 评论(0) 推荐(0) 编辑
摘要: No1: Android Studio 点击运行,找不到夜神模拟器的解决办法 nox_adb.exe connect 127.0.0.1:62001 阅读全文
posted @ 2017-08-14 09:30 嘉禾世兴 阅读(256) 评论(0) 推荐(0) 编辑
摘要: 效果图 布局 java 注意事项 1.清单文件需要配置 2.gradle配置需要24以上 3.recyclerView的下滑和swipRefreshLayout的下拉刷新会冲突,所以需要监听appBarLayout的位移,当位移等于0时,即appBarLayout全部展示,可以下拉刷新 4.stri 阅读全文
posted @ 2017-08-10 15:57 嘉禾世兴 阅读(379) 评论(0) 推荐(0) 编辑
摘要: 需求: App启动的时候获得广告图片链接,如果已经存在,判断是否和本地的相同,不相同才去下载到本地。 流程图: 这些都在广告页的前一个页面操作(logo页或者Application) 然后,广告页只需要去本地拿地址然后加载就可以了 阅读全文
posted @ 2017-08-08 11:38 嘉禾世兴 阅读(526) 评论(0) 推荐(0) 编辑
摘要: startActivity后调用 可以实现Activity跳转的动画效果 打开activity的特效 关闭activity的特效 最关键的是配置 将Activity隐藏 阅读全文
posted @ 2017-08-02 14:44 嘉禾世兴 阅读(5699) 评论(0) 推荐(0) 编辑
摘要: 原文地址:一种粗暴快速的Android全屏幕适配方案 阅读全文
posted @ 2017-07-28 15:15 嘉禾世兴 阅读(144) 评论(0) 推荐(0) 编辑
摘要: 接上篇《android开发艺术探索》读书笔记(一) No1: 在android中使用多进程只有一种方法,那就是给四大组件在AndroidMenifest中指定android:process属性。 No2: 默认进程的进程名是包名。 No3: ":"要加上当前包名,进程属于当前应用的私有进程,其他应用 阅读全文
posted @ 2017-07-28 14:55 嘉禾世兴 阅读(561) 评论(0) 推荐(0) 编辑
摘要: 指针的引用 在C++中可以声明const引用 const Type& name = var; const引用让变量拥有只读属性 const引用总结 1.const& int e 相当于const int * const e 2.普通引用相当于int *const e1 3.当使用常量(字面量)对co 阅读全文
posted @ 2017-07-26 11:02 嘉禾世兴 阅读(314) 评论(0) 推荐(0) 编辑
摘要: No1: 如果新Activity采用了透明主题,那么当前Activity不会回调onStop; No2: 新Activity启动之前,栈顶的Activity需要先onPause后,新Activity才能启动。 No3: onPause和onStop都不能执行耗时的操作。 No4: Activity在 阅读全文
posted @ 2017-07-19 17:59 嘉禾世兴 阅读(333) 评论(0) 推荐(0) 编辑
摘要: 原文地址https://my.oschina.net/javalover/blog/179003 使用 阅读全文
posted @ 2017-07-19 11:44 嘉禾世兴 阅读(207) 评论(0) 推荐(0) 编辑
上一页 1 ··· 4 5 6 7 8 9 10 11 12 ··· 15 下一页