<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[a289509175的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/a289509175</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; a289509175]]></copyright><item><title><![CDATA[关于反码，byte最大值127，最小值-128的由来缘由以及书本上从未讲解过的反码补码功能作用]]></title><link>https://blog.youkuaiyun.com/a289509175/article/details/78440419</link><guid>https://blog.youkuaiyun.com/a289509175/article/details/78440419</guid><author>a289509175</author><pubDate>Fri, 03 Nov 2017 22:48:08 +0800</pubDate><description><![CDATA[### byte从0开始
byte0  (0000 0000),


### byte中的所有正数
byte1  (0000 0001),
byte2  (0000 0010),
byte3  (0000 0011),
...
byte126  (0111 1110),

byte127  (0111 1111),//byte最大值


因为计算机规定 最高位为1时表示]]></description><category></category></item><item><title><![CDATA[一个简短main方法讲透synchronized的正确用法]]></title><link>https://blog.youkuaiyun.com/a289509175/article/details/78220991</link><guid>https://blog.youkuaiyun.com/a289509175/article/details/78220991</guid><author>a289509175</author><pubDate>Thu, 12 Oct 2017 23:12:50 +0800</pubDate><description><![CDATA[public class Test {
    public static void main(String[] args) {
        new Thread() {
            @Override
            public void run() {
                try {
                        wasteTime("t]]></description><category></category></item><item><title><![CDATA[敏感字过滤器]]></title><link>https://blog.youkuaiyun.com/a289509175/article/details/73865646</link><guid>https://blog.youkuaiyun.com/a289509175/article/details/73865646</guid><author>a289509175</author><pubDate>Thu, 29 Jun 2017 00:52:10 +0800</pubDate><description><![CDATA[最近项目中要写一个过滤器来过滤玩家的脏话，敏感字词。现在写了个工具能直接使用，希望能帮到大家，看到请给我个赞，谢谢啦哈哈。1. 代码package com.wang;import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOExce]]></description><category></category></item><item><title><![CDATA[Maven入门最少必备知识]]></title><link>https://blog.youkuaiyun.com/a289509175/article/details/73079714</link><guid>https://blog.youkuaiyun.com/a289509175/article/details/73079714</guid><author>a289509175</author><pubDate>Mon, 12 Jun 2017 00:31:33 +0800</pubDate><description><![CDATA[Maven最少入门必备知识Maven特色：一键打包，依赖管理（管理所有的要用到的jar包）tips：mvn项目构建过程：
清理（命令：mvn  clean，清理输出的.class，清理工程目录下的target文件夹），
编译（命令：mvn  compile，将java代码编译成class文件），
测试，
报告，
打包（命令：mvn  package将项目打包，在target目录下），
（ps:打包方]]></description><category></category></item><item><title><![CDATA[java设计模式之Template Method模式  ——将具体处理交给子类]]></title><link>https://blog.youkuaiyun.com/a289509175/article/details/72862603</link><guid>https://blog.youkuaiyun.com/a289509175/article/details/72862603</guid><author>a289509175</author><pubDate>Sun, 04 Jun 2017 23:34:02 +0800</pubDate><description><![CDATA[1.Template Method模式：在父类（抽象类）中定义处理流程的框架（父类的抽象方法）， 
  在子类中实现具体的处理（实现父类的抽象方法）。2.示例程序共4个类：AbstractDisplay ：    定义非抽象普通方法display（）;
    定义抽象方法open（），print（），close（）（由子类实现）;
    在display（）中依次调用了open（），print（]]></description><category></category></item><item><title><![CDATA[游戏心得]]></title><link>https://blog.youkuaiyun.com/a289509175/article/details/72596831</link><guid>https://blog.youkuaiyun.com/a289509175/article/details/72596831</guid><author>a289509175</author><pubDate>Sun, 21 May 2017 11:33:33 +0800</pubDate><description><![CDATA[1.退出房间的处理，由客户端发出协议，服务器接收协议以后广播给所有人除了发送此消息的客户端
优点：节约发送退出房间消息的客户端流量以及将退出房间事件交由客户端完成，体验更流畅而不用等到收到服务器指令后再执行退出房间事件


2.回合制活动玩家的轮换
举例，间隔5秒一个换一个活动玩家，第一个活动玩家的活动时间是0-5秒，第二个活动玩家的活动时间本该是6-10s，可以想办法处理为5-9或者4]]></description><category></category></item><item><title><![CDATA[java设计模式之Adapter模式    加个适配器以便于复用（1）]]></title><link>https://blog.youkuaiyun.com/a289509175/article/details/71513178</link><guid>https://blog.youkuaiyun.com/a289509175/article/details/71513178</guid><author>a289509175</author><pubDate>Tue, 09 May 2017 23:55:59 +0800</pubDate><description><![CDATA[1.Adapter模式分两种： 
类适配器模式（使用继承的适配器） 
对象适配器模式（使用委托的适配器）2.示例（1）（使用继承的适配器）示例程序是将一段字符串hello显示为（hello）或是hello的简单程序。 
Banner类：有将字符串用括号括起来的showWithParen（）和用星号将字符串括起来的showWithAster（）。Banner相当于家用“实际”输入电压220V（不能满足]]></description><category></category></item><item><title><![CDATA[java设计模式之Iterator模式        ——一个一个遍历]]></title><link>https://blog.youkuaiyun.com/a289509175/article/details/71436903</link><guid>https://blog.youkuaiyun.com/a289509175/article/details/71436903</guid><author>a289509175</author><pubDate>Mon, 08 May 2017 22:46:18 +0800</pubDate><description><![CDATA[1.Iterator模式Iterator模式用于在数据集合中按照顺序遍历集合。2.程序Aggregate:表示集合的遍历 
Iterator:遍历集合的接口 
Book:表示书的类 
BookShelf:表示书架的类 
BookShelfterator:遍历书架的类 
Main:测试程序行为的类Aggregate.java//该接口声明方法只有一个，该方法会生成一个用于遍历集合的迭代器。public]]></description><category></category></item><item><title><![CDATA[android事件传递精华简易版]]></title><link>https://blog.youkuaiyun.com/a289509175/article/details/60483491</link><guid>https://blog.youkuaiyun.com/a289509175/article/details/60483491</guid><author>a289509175</author><pubDate>Sun, 05 Mar 2017 23:31:55 +0800</pubDate><description><![CDATA[事件传递机制1.Button（->继承自TextView）  --继承自View，无子组件类型
    onTouchEvent（）
        return true；//事件消费，不再回传
        return false；或者return super.onTouchEvent（）；//事件未被消费，事件回传回去
2.LinearLayout，RelativeLayout  --继承]]></description><category></category></item><item><title><![CDATA[如何在andorid工程中嵌入开发者盈利广告]]></title><link>https://blog.youkuaiyun.com/a289509175/article/details/60329668</link><guid>https://blog.youkuaiyun.com/a289509175/article/details/60329668</guid><author>a289509175</author><pubDate>Sat, 04 Mar 2017 16:07:12 +0800</pubDate><description><![CDATA[1.拷贝广告的jar包（如StartAppInApp-2.4.1.jar）至工程的lib目录下2.更新AndroidManifest.xml新增如下权限    <uses-permission android:name="android.permission.INTERNET"/>
    <uses-permission android:name="android.permission.ACCES]]></description><category></category></item><item><title><![CDATA[android代码里面写布局简单示例]]></title><link>https://blog.youkuaiyun.com/a289509175/article/details/60156164</link><guid>https://blog.youkuaiyun.com/a289509175/article/details/60156164</guid><author>a289509175</author><pubDate>Fri, 03 Mar 2017 23:35:44 +0800</pubDate><description><![CDATA[在MainActivity中重写oncreate（），用代码造线性布局，此布局上添加TextView用于显示。    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        //setContentView(R.layout.activity_ma]]></description><category></category></item><item><title><![CDATA[Activity初始化数据initData()时的多线程同步处理]]></title><link>https://blog.youkuaiyun.com/a289509175/article/details/57414380</link><guid>https://blog.youkuaiyun.com/a289509175/article/details/57414380</guid><author>a289509175</author><pubDate>Sun, 26 Feb 2017 15:03:42 +0800</pubDate><description><![CDATA[package com.example.wjfragmenttest; 
import java.util.Iterator; 
import android.app.Activity; 
import android.os.Bundle; 
import android.view.Menu; 
import android.view.MenuItem; 
import android.view.W]]></description><category></category></item><item><title><![CDATA[Android分享功能的实现]]></title><link>https://blog.youkuaiyun.com/a289509175/article/details/55657951</link><guid>https://blog.youkuaiyun.com/a289509175/article/details/55657951</guid><author>a289509175</author><pubDate>Sat, 18 Feb 2017 12:53:38 +0800</pubDate><description><![CDATA[protected void shareApk(){
    //1.短信分享
    Intent intent = new Intent("android.intent.action.SEND");
    intent.addCategory("android.intent.category.DEFAULT");
    intent.setType("text/plain");
    in]]></description><category></category></item><item><title><![CDATA[如何在应用内部启动另外的应用]]></title><link>https://blog.youkuaiyun.com/a289509175/article/details/55657337</link><guid>https://blog.youkuaiyun.com/a289509175/article/details/55657337</guid><author>a289509175</author><pubDate>Sat, 18 Feb 2017 11:12:01 +0800</pubDate><description><![CDATA[PackageManager pm = getPackageManager();
protected void startApk(){
    //包名
    String packName = clickBean.getPackName();    //通过包名获取意图
    Intent launchIntentForPackage = pm.getLaunchIntentForPackag]]></description><category></category></item><item><title><![CDATA[json文件解析为字符串的操作]]></title><link>https://blog.youkuaiyun.com/a289509175/article/details/55657318</link><guid>https://blog.youkuaiyun.com/a289509175/article/details/55657318</guid><author>a289509175</author><pubDate>Sat, 18 Feb 2017 11:09:28 +0800</pubDate><description><![CDATA[/**  
 * 功能：将json文件解析成json字符串
 * 此种方式用于简单的json文件解析
 * @param path  传入.json文件的路径（根路径为当前java程序路径）
 * @return
 */
public static String getStringFromFile(String path){
    String res = "";
    try {]]></description><category></category></item><item><title><![CDATA[json特殊字符串的处理]]></title><link>https://blog.youkuaiyun.com/a289509175/article/details/54340222</link><guid>https://blog.youkuaiyun.com/a289509175/article/details/54340222</guid><author>a289509175</author><pubDate>Wed, 11 Jan 2017 07:36:40 +0800</pubDate><description><![CDATA[在对json字符的备份还原中，json中如果存在特殊字符串，如单个双引号‘’或者冒号：，则会引发json还原异常，导致还原不成功。
处理策略：
1.
System.out.println((int)'"');//获取双引号的ASCII码值，读取双引号值为34（冒号为58,以及左右中括号，大括号，逗号）

2.
将此ASCII值转换为16进制的Unicode编码值
34即为16*2+2]]></description><category></category></item><item><title><![CDATA[android中的自定义属性的运用细节]]></title><link>https://blog.youkuaiyun.com/a289509175/article/details/53495656</link><guid>https://blog.youkuaiyun.com/a289509175/article/details/53495656</guid><author>a289509175</author><pubDate>Wed, 07 Dec 2016 00:00:46 +0800</pubDate><description><![CDATA[一. 自定义命名空间布局文件xml中：
xmlns:androidtest = "http://schemas.android.com/apk/res/工程包名"
二. 创建attrs.xml文件通过包名找到工程，从而寻找到资源文件，在res/values下新建attrs.xml文件用于存放属性的配置文件：
<resources>
  <declare-styleable name = "Conte]]></description><category></category></item><item><title><![CDATA[Android简单的加密解密处理]]></title><link>https://blog.youkuaiyun.com/a289509175/article/details/53293288</link><guid>https://blog.youkuaiyun.com/a289509175/article/details/53293288</guid><author>a289509175</author><pubDate>Tue, 22 Nov 2016 23:19:36 +0800</pubDate><description><![CDATA[1.在加解密工具类EncryptTool.java中定义加解密方法 
//加密过程 
public static String encrypt(int seed,String str){//seed为加密种子，str为加密对象 
    byte[] bytes = str.getBytes(); 
    for(int i = 0;i<bytes.length;i++){ 
        by]]></description><category></category></item><item><title><![CDATA[对设备管理器DeviceAdmin的锁屏学习]]></title><link>https://blog.youkuaiyun.com/a289509175/article/details/53166250</link><guid>https://blog.youkuaiyun.com/a289509175/article/details/53166250</guid><author>a289509175</author><pubDate>Mon, 14 Nov 2016 22:58:34 +0800</pubDate><description><![CDATA[1.创建DeviceAdminReceiver的子类
如：com.wang.lockscreen.DeviceAdminSample
2.在清单文件中配置广播接收者


  android:name="com.wang.lockscreen.DeviceAdminSample"
  android:description="@string/sample_device_admin_des]]></description><category></category></item><item><title><![CDATA[获取Manager的两种方式]]></title><link>https://blog.youkuaiyun.com/a289509175/article/details/53148765</link><guid>https://blog.youkuaiyun.com/a289509175/article/details/53148765</guid><author>a289509175</author><pubDate>Sun, 13 Nov 2016 14:07:42 +0800</pubDate><description><![CDATA[获取管理器Manager一共两种方式。
1.提供API。DevicePolicyManager dps = DevicePolicyManager.XXX();

2.提供服务的方式。DevicePolicyManager dps = (DevicePolicyManager)getSystemService(DEVICE_POLICY_SERVICE);//设备管理员权限

一键锁屏：]]></description><category></category></item></channel></rss>