自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

android_Mr_夏

相互学习,相互进步

  • 博客(39)
  • 资源 (2)
  • 收藏
  • 关注

原创 java虚拟机内存区域(详细)

java虚拟机 通过上篇我们了解到.java文件通过javac编译成.class文件,然后.class文件运行在java虚拟机,下面针对虚拟机对象回收以及内存分配进行分析。java内存机制java垃圾回收机制java内存区域java垃圾回收机制 Java GC(Garbage Collection,垃圾收集,垃圾回收)机制,是Java与C++/C的主要区...

2018-05-22 15:01:11 936

原创 android中热修复与插件化(一)

简介 目前android技术最前沿莫属热修复与插件化的技术点,当下用得最多的就是阿里的Andfix,和微信的Tinker框架,针对源码的实现,再次做个记录。热修复给我们解决的问题刚上线的APP应用,由于测试的疏忽,发现了一个严重的bug。针对一些小功能,不想再次经历发布,打包发送给用户。 插件化解决的问题解决应用越来越大所带来的问题(方法超过65535)解...

2018-05-03 13:49:40 794

原创 Android常用设计模式-抽象工厂模式

抽象工厂模式是一种创建型设计模式,它提供了一种方法来创建一组相关的对象,而不需要关心这些对象的具体实现方式。该模式可以将对象的创建和使用分离,从而提高代码的可维护性和可扩展性。在抽象工厂模式中,我们定义一个抽象工厂接口,用于创建一组相关的对象。该接口中通常包含多个工厂方法,每个工厂方法用于创建一个特定类型的对象。然后,我们可以根据需要实现该接口,以提供具体的工厂实现。抽象工厂模式是一种常用的设计模式,它可以帮助我们创建一组相关的对象,而不需要关心这些对象的具体实现方式。

2023-03-26 19:52:12 479 1

原创 Android常用设计模式-工厂模式

工厂模式是一种创建型设计模式,它提供了一种创建对象的方式,而不需要将对象的创建过程暴露给客户端。在 Android 应用程序开发中,工厂模式经常被用来创建一些常用的组件,比如对话框、菜单、按钮等。在 Kotlin 中,我们可以使用 companion object 关键字来实现工厂模式。通过在 companion object 中定义工厂方法,可以方便地创建对象,而不需要将对象的创建过程暴露给客户端。工厂模式的优点包括隔离复杂的对象创建逻辑,提供灵活的扩展能力,以及统一管理对象创建过程。

2023-03-25 21:35:25 761

原创 Android常用设计模式-单例模式

android常用的设计模式-单例模式

2023-03-25 19:59:08 621

原创 Python 数据容器(4) - dict(字典、映射)

python 数据容器->字典

2022-11-29 14:30:02 374

原创 Python 数据容器(3) - set(集合)

Python 数据容器- (set)

2022-11-27 23:18:11 275

原创 Python 数据容器(2) - tuple(元祖)

python数据容器-tuple(元祖)

2022-11-27 18:21:38 445

原创 Python 数据容器(1) - list(列表)

python数据容器知识点

2022-11-27 17:34:01 406

原创 保姆级python安装教程(windows、macos、linux)

最近在重温python课程学习,当中想记录一下自己在课程中所遇到的一些安装笔记,同时将这些记录下来,分享给大家。一起学习,一起进步。

2022-11-22 21:53:17 2136

原创 IOS之oc学习笔记(2)

IOS学习笔记(2)语法概述oc没有包名的概念在java中为了防止两个类名冲突,可以将两个类放置不同的包里面,OC是没有包的概念的,取而代之的是开发人员给类名加上前缀,使用前缀可以有效的防止类名冲突;oc的数据类型#mermaid-svg-cSKhl4apPSkgCESs {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-cSKhl4apPSkgCESs .er

2022-05-23 22:44:50 328 2

原创 IOS之oc学习笔记(1)

IOS之oc学习笔记(1)OC的简介1.Objective-C简称Obj-C或者OC,Objective的意思就是面向对象的。OC其实就是在C语言的基础之上,封装了一层面向对象的语法,他并不是一门全新的编程语言。2.OC是Mac OS X系统和iOS系统的主要开发编程语言。3.C程序的源文件的后缀名为.c,OC程序的源文件是后缀名为.m,m就是message的意思。因为OC是完全兼容C语言的,所以在.m文件之中是可以写任意的C代码。并且OC中main函数仍然是OC程序的入口,作用和C语言中的是一样

2022-05-22 20:02:57 608

原创 软件开发模式之敏捷开发(scrum)

###简介这几年关于敏捷开发在互联网企业中越来越广泛被使用到,运用的比较多的当属scrum敏捷开发和xp敏捷开发,人人都在谈论敏捷开发。那什么才是敏捷开发呢?####目录####什么是敏捷开发敏捷开发以用户的需求进化为核心,采用迭代、循序渐进的方法进行软件开发。在敏捷开发中,软件项目在构建初期被切分成多个子项目,各个子项目的成果都经过测试,具备可视、可集成和可运行使用的特征。换言之,就是把一个大项目分为多个相互联系,但也可独立运行的小项目,并分别完成,在此过程中软件一直处于可使用状态。

2018-08-08 19:18:20 119273 10

原创 git使用教程

安装Git windows版的Git,从这里进行下载,然后按默认安装完成。在开始菜单里找到”git->Git Bash”就说明安装成功。创建版本库 版本库又名仓库(repository),可进行版本管理的目录。 所以创建一个版本库,首先: 1.mkdir learngit 创建目录 ...

2018-05-11 09:48:28 309

原创 angular4使用XLSX将数据导出到excel(四)

简介 将后台传过来的json数据对象,然后以excel表格进行导出,传统的方案:后台进行数据导入表格,然后将excel二进制文件提供给前端去下载。由此我们可以思考是否直接将后台的json数据通过前端来导出到excel表格中呢?答案是肯定的。我们可以借用XLSX这个插件来实现数据的导入导出功能。目录项目创建添加所需要的依赖编写service测试项目创建...

2018-04-25 13:04:23 3940 2

原创 angular4模板中数据显示(三)

简介 在开发过程中,我们需要从服务器获取到数据需要显示在html模板中,把大量的数据显示在界面中给用户展示,在原生js中,我们需要获取到元素然后通过设置属性来赋值。但是js操作dom存在着跨浏览器兼容的问题,以及频繁操作dom元素带来安全隐患。angular在显示数据给我们提供了数据绑定来帮助我们解决这一问题。目录angular插值表达式angular属性绑定angul...

2018-04-17 10:56:40 1413

原创 angular4架构概述(二)

简介 由angular的cli(脚手架)创建出来的项目可知,angular项目由模块(module)构建成,每个angular应用都至少有一个根模块,通常我们默认为AppModule模块。然后每个模块由组件+服务组成。目录angular模块分析angular组件分析angular服务分析angular模块分析angular模块是由装饰器@ngModule来...

2018-04-09 17:13:25 921

原创 Module not found: Error: Can't resolve './$$_gendir/app/app.module.ngfactory'

简介在创建angular项目的时候,打包生成dist文件出现下列错误:ERROR in ./src/main.tsModule not found: Error: Can't resolve './$$_gendir/app/app.module.ngfactory' in 'D:\web\task\src' @ ./src/main.ts 3:0-74 @ multi ./src/...

2018-03-29 15:27:09 1803

原创 第一个快应用(quickapp)demo

简介 随着3月20号北京开发的快应用(quickapp)的发布,各大手机应用厂商加入了快应用这个行列,该应用模块以标准js语法+重组css标签+Flexbox布局+mvvm模式。类似于微信小程序的依附在微信中,而快应用依附在各大应用市场,可搜索直接打开,无需安装的便捷操作方式。环境搭建(window平台)安装nodejs(官网)。安装hap-toolkit(打开cmd-&...

2018-03-26 15:25:05 12578 6

原创 angular4环境搭建(一)

简介 angular版本迭代非常之快速,目前已经更新到了angular5版本,因为本次实战项目在是基于angular4来搭建的,所以项目版本环境是以angular4基础来搭建的,后期可以进行更新。目录angular所需搭建的环境几个比较常用的命令几种常见的API测试工具搭建所碰到的问题开始第一个HelloWorldangular所需搭建的环境1.nod...

2018-02-08 10:47:57 1181

原创 Execution failed for task ':app:preDebugAndroidTestBuild

简介当我们平常运行AS编译器,发生如下错误 Error:Execution failed for task ‘:app:preDebugAndroidTestBuild’. Conflict with dependency ‘com.android.support:support-annotations’ in project ‘:app’. Resolved versions

2018-02-05 15:01:55 49719 5

原创 java中class文件解析

简介 开发一个android项目流程,编写xml布局,处理所对应的Activity的界面,运行项目,这些常规操作,我们再也熟悉不过,但是ide所在底层实现java源码->….->APK生成,这些究竟是怎么产生的?是时候探究一番了。class文件结构深入解析什么是class文件? class文件全名称为Java class文件,主要在平台无关性和网络移动性方面使Ja

2018-02-02 11:33:41 825

原创 android事件分发机制

简介 我们都了解到android上面的view控件是以树形的形式存在的,当我们点击最上层的view控件,这个控件的点击事件究竟分配给谁?那么接下来对于android的事件进行分析。目录1.android事件分发机制的起因 2. 三个重要的事件分发的方法 3. 事件分发流程android事件分发机制的起因android上面的view是树形结构的,从最顶层的A

2018-01-30 10:51:35 246

原创 view的绘制机制(三)

简介 上一遍我们分析了ViewRootImpl对象以及view的measure()方法进行分析,接下来我们继续分析layout()和draw()方法。目录layout()draw()layout()从上一篇博客中我们了解到ViewRootImpl中的performTraversals()方法中调用了performLayout(),首先查看源码: pr

2018-01-29 13:08:29 249

原创 view的绘制机制(二)

简介 上篇文章描述了渲染android布局的源码分析view的绘制机制(一),分析了在Activity中onCreate()方法中执行setContentView()的内部实现机制,以及LayoutInflate对象对于布局进行pull,从而添加到父布局。做了这么多的铺垫,我们也需要对于view的绘制正式进入分析。目录ViewRootImpl流程分析分析onMeasure

2018-01-25 09:42:16 274

原创 view的绘制机制(一)

简介 我们在学习android的时候,直接在xml中指定android的标签,就能显现出各式各样的界面,但是我们并不了解其中的绘制流程,从而抱着一个学习的心态,从源码角度去查看view的绘制机制。目录1.view的绘制流程(一) 2.总结view的绘制流程在进行分析之前,我们可以先看看下面的流程图: 每个Activity都持有Window的对象,Andro

2018-01-22 16:23:55 291

原创 android用proGuard代码混淆

简介 因为java是一门跨平台语言,java虚拟机会把java源代码编译成.class文件,从而各种软件可对.class文件进行反编译,造成代码不安全,以至于android引入了proGuard对.class文件进行混淆。目录proguard是什么?proguard技术的功能proguard工作原理proguard在android中的运用proguard是什么?

2018-01-19 10:43:35 318

原创 AsyncTask源码分析

简介 分析完handler的机制之后,进阶我们分析一下AsycTask的常规操作,以及实现的源码,我们可以从一下几个方面去分析1.什么是AsyncTask? 2.AsyncTask的使用方法 3.AsyncTask内部原理 4.AsyncTask的注意事项什么是AsycTask? 我们可以用一句话进行总结: AsycTask本质就是封装了线程池和ha

2018-01-17 13:12:56 254

原创 python中的复制操作

关于python中的复制操作 记录一下关于python当中的几种复制操作第一种复制操作import numpy as np#随机生成12个不同的矩阵值a = np.arange(12)print(a)#把a赋值给bb = aprint(b is a)b.shape = (3, 4)print(a)print(id(a))print(id(b))print("=======

2018-01-15 10:43:12 451

原创 handler源码分析

简介 在android中,更新ui界面操作只能在ui线程中进行,在主线线程之外的线程中直接更新页面显示的问题是:系统会报这个异常:android.view.viewroot$calledfromwrongthreadexception: only the original thread that created a view hierarchy can touch its views.

2018-01-12 17:42:58 255

转载 numpy知识点总结

简介在我们运行事例代码之前,我们必须已经安装以下: 1. python安装 2. numpy库安装 注:我们可以直接安装anaconda,其已经包含了python,和大量的python库。可以省去不必要的麻烦。anaconda官网地址包含window,mac,linux安装numpy基础简介在我们运行事例代码之前,我们必须已经安装以下

2018-01-10 10:34:59 874 1

原创 android binder机制总结

简述 新的一年,祝愿自己在新的一年越来越好,在新的一年里,借用csdn这个平台对android做一个系统的整理,对于binder机制,在网上的文章多得数不胜数,每篇基本都是大同小异,所以在这里也做一个知识的笔记,给自己以后做个复习。目录什么是binder?binder通讯机制的介绍什么是binder?我们都知道android运行的底层是linux中。 linux对每个应用的分配:

2018-01-04 10:38:54 305

原创 android webview全面使用讲解,以及一些遇到的坑

简介 webview是在android中渲染web页面的控件,它在android4.4之前是基于webkit引擎,在之后是基于Chromium引擎。webview的基本使用当前使用ide为:AndroidStudio3.0,测试机为华为荣耀8,系统android7.0事例:1.因为webview加载的页面基于web,所以我们必须在AndroidManifest中添加网

2017-12-25 12:59:40 1282

原创 Service的进程保活

简述 android系统在内存不足会回收一些后台服务,保证系统的流畅运行,对于service的进程保活也违反了android系统对于内存回收机制的原则性,我们下列所做的只能增强service在系统的存活率,真正做到永驻后台服务service的基础 要了解service保活必须首先了解service的基础,关于service的启动方式以及service的生命周期,这点并不在我们...

2017-12-21 11:00:09 937 1

原创 android中的第五大组件->Fragment

简介 fragment在android中是以碎片的形式依附在activity中,常被成为android控件中的第五大组件,现在更多的形式都是以单activity+多fragment的app结构。在相同界面中,用fragment比activity所占用内存要小的多,如果我们考虑到性能优化这方面,我们也可以优先考虑使用fragment。我们可以从以下几个方面进行解析。fragment为...

2017-12-18 15:00:18 477

原创 idea maven项目来搭建ssm整合

maven项目搭建ssm最近在学习java服务器这块,用到了spring,springmvc,mybatis框架的知识,在此做个笔记,整合ssm框架。(maven版本为:2017.2.5,jdk1.8.42) 搭建ssm可分为以下几个步骤: 创建项目 在pom.xml中添加依赖 配置整合mybatis的过程 配置jdbc文件,mybatis-config文件 配

2017-12-14 17:38:24 4150

原创 maven配置spring所需要的依赖

maven配置spring所需要的依赖 今天有maven搭建spring框架,所收集到的spring依赖,在这里做个记录,方便以后查找。<dependency> <groupId>org.springframework</groupId> <artifactId>spring-core</artifactId> <vers

2017-12-14 14:03:37 8150

原创 java集合知识点总结

java集合知识点总结 集合中主要包含3个接口在(package java.util(Collection,Map,Iterator)) 层次关系:实线边框为实现类,折现边框是抽象类,点线边框的是接口Iterator接口,List接口存在iterator()方法,遍历集合中的元素Iterator主要有:> 1.hasNext()是否还有下一个元素。 2.next()返回下一个元素。

2017-12-13 13:19:42 7029 2

原创 activity生命周期(这篇足够了)

activity生命周期(这篇足够了)摘要 做安卓开发已经4年多了,所接触的知识点也比较零散,在这里记录一下android方面的知识点,方便自己以后复习,有什么不足的,以及错误的欢迎拍砖。activityactivity从开始到结束的四个状态。activity的生命周期。activity的进程优先级。activity的四个状态关于activity的...

2017-12-07 14:35:02 141371 15

spring+mybatis+springmvc

运用idea的maven项目,对spring+springmvc+mybatis进行整合

2017-12-15

maven项目ssm整合

maven项目整合ssm的基本实现,运用的是mysql数据库,可下载直接运行

2017-12-14

空空如也

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

TA关注的人

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