自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

魔法少女厄加特的博客

厄加特的超神之路

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

原创 计算机网络体系结构基础

无论是在生活中还是在程序设计中,网络访问已经成为了我们不可分割的一部分,现在随着5G时代的到来,你对计算机网络这一块的原理是否还是简单的一知半解呢,现在我们来去集体看看我们所谓的计算机网络体系究竟包含哪些东西吧。计算机网络体系结构说到计算机网体系结构,我们通常可以按TCP/IP模型分为四层,分别是链路层、网络层、传输层、应用层,其中如果按OSI模型分的化,链路层又分为物理层和链路层,应用层亦可以分为会话层、表示层和应用层。这样再加上上面的网络层和传输层,按OSI模型可以分为7层,可以参照下面图片理解。

2020-07-04 14:15:29 1292 1

原创 使用Artifactory搭建本地构建仓库

构建仓库?有些人第一次听说这个词的时候可能感到比较陌生,但是做开发的人肯定都有用到过,例如我们做Android开发的常用google和center或者aliyun等仓库,前两者在国内访问是十分费劲的,网络总是会出现问题,对于一些大公司来说,他们可能还会使用自己公司内部的一些资源包,所以我们自己搭建一个这样的构建仓库是十分必要的,不仅仅会提升我们日常开发效率,还会大大的提升安全性。首先Artifactory是一款收费的软件,它的正版价格是十分昂贵的,但是我们尽量还是要去支持一下正版软件,下面我们来讲讲破解教

2020-06-16 00:37:19 8259

原创 Java中,你真的了解你的对象吗?

面向对象的编程语言众所周知,Java是一门面向对象的编程语言,有人会问,什么是面向对象的编程语言呢,通常听到最多又最古老的话就是“万物皆对象”,那么你对你的“对象“到底知道多少呢?你的对象是如何产生的呢?你的对象又存有哪些属性呢?你的对象存放在哪里呢?你的对象又是怎么死亡的呢?下面我们带着上面的疑问来对你的对象进行一下深入了解吧。一.对象实例化的过程稍微有点Java基础的人都知道,我们创建一个对象通常有两种方式,一种就是常见的”new“一个对象,再一种就是通过反射来获取到你的对象。在这里,我们看

2020-06-16 00:35:37 4970

原创 Java常见的集合类之间的关系与特点

前言做为一名程序开发人员,善用数据结构与合适的算法是写出一份具有高效性能的代码的基础,Java中最最基础的数据结构主要有三种,分别是数组、链表还有图,其中“图”这种数据用的比较少,像我们开发常用的集合同时都是由数组和链表演化而成。集合框架jdk为我们提供了集合类,像我们写代码最常用的ArrayList,HashMap都是集合,这里需要注意的是,像List,set,Queue都是实现的Collection接口,而Map则是一个独立的接口。首先我们来讲讲List、Set、Queue、Map的区别及其具体

2020-06-15 03:18:34 4886 1

原创 Java虚拟机的内部构成

Java虚拟机会在在执行Java程序的时候会把其内存划分为一些不同的区域,这些区域都有其各自的用途,并且永远其自己的生命周期,下面我们来看看这张图由上图我们可以看出,虚拟机的内存区域可以按照是否是线程共享的分为两大块,线程共享的区域有方法区和堆,线程私有的分为虚拟机栈,本地方法栈和程序计数器。下面我们来详细看看这些东西里面都存着什么吧。方法区方法区和Java堆一样,同属于是线程共享的数据区域。方法区用来存储一些已经被虚拟机加载的类型信息、常量、静态变量、即时编译后的代码缓存等数据。其中方法区还有

2020-06-05 23:19:26 6410

原创 Android AMS源码分析之结合AIDL分析bindService

初识AMS(ActivityManagerService)首先提到AMS(ActivityManagerService)我们先来了解一下Android系统的启动流程,以及AMS是什么时候创建的。启动到SystemServer这时才会启动一些列的系统服务,其中包括1.引导服务,例如 ActivityManagerService(AMS)、DeviceIdentifiersPolicyService、 UriGrantsManagerService等2.核心服务,例如WebViewUpdateS

2020-05-14 13:19:47 14786

原创 Android之AIDL使用binder进程间通信原理

上回书说到,如何使用AIDL进行线程进通信这次我们来研究一下AIDL线程间通信原理。Binder机制首先我们需要知道一下什么是Binder机制,具体什么是Binder机制推荐多查一查其他博客,由于太过于偏向底层,稍微做一些了解即可。代码分析还是先上代码,首先看一下我们自己定义的AIDL接口注意,一下代码均是在Android-29(Android 10.0)版本上的interface IMyAidlInterface { void sendMessage(in String msg);

2020-05-14 01:23:53 14898

原创 Binder之AIDL进程间通信的使用(附源码)

废话不多说,先看代码,再讲原理。首先我们先搞两个进程出来,一个作为客户端(client)一个作为服务端(service)。在客户端和服务的分别创建一个AIDL接口,可以用如下方式进行创建,需要注意的是,两端创建的接口必须保证完全一致,包括他们的包名,这里的包名可能需要手动去修改一下,不一致的话运行时会抛出如下异常 “Binder invocation to an incorrect inter...

2020-05-07 19:49:36 20551

原创 Java 反射与注解的用法与实践

提到Java的反射与注解,大家可能并不陌生,但是在实际开发中用到的可能并不是很多,下面我们来具体的了解一下这两个东西。反射众所周知,Java是一门面向对象的开发语言,所以当我们的亲戚朋友问我们有没有对象的时候,如果我们没有对象,我们可以去 new 一个对象出来,通过这种方法,也就解决了广大程序员找不到对象的烦恼,这也就是所谓的正,这也就引出了与正的对立概念——反,所以反射也就这样出来了。反射...

2020-05-06 21:00:47 20499

AILD进程间通信Demo

AILD进程间通信Demo

2020-05-07

空空如也

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

TA关注的人

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