
JAVA
帅气好男人_Jack
找工作,求推荐成都地区的工作。
展开
-
怪啊!Stream方式读取字符文件出现许多乱码?
Stream读取字符文件之乱码问题简介如题,开发中我们经常使用InputStream方式来读取一些文件,如字符文件,也许你会这样做:public static BankArea getStringFromFile(Context context){ InputStream stream = null; try { 打开字符文件data.json stream = context.getAssets().open("data.json"); St原创 2020-07-10 17:04:45 · 1965 阅读 · 0 评论 -
【转载】时间复杂度计算过程
时间复杂度转载 2019-05-31 10:27:51 · 729 阅读 · 0 评论 -
Java多线程3.0
CountDownLatch计数器简单解释一个或者一组线程CountDownLatch.await()等待CountDownLatch计数器为0的时候开始执行;形象比喻有点类似出游人数计数器,统计出游报到人数,来一个,总数减一,人来完了,就可以出发去旅游了public void Test() throws InterruptedException { final CountDownLat...原创 2019-05-22 21:42:32 · 291 阅读 · 0 评论 -
java数据结构进阶篇
java数据结构进阶先简单总结常见list、set和map,list和set都集成于Collection 集合,list有序集,能存储相同元素,set无序集,不能存储相同元素,map键值对方式存储list下面有ArrayList、LinkedList,前者底层是以数组方式存储,后者链表方式;浅谈几个问题增删改查效率问题对于增删操作,前者操作比较麻烦,删除或者增加后数组会进行移位调制,后者方...原创 2019-04-04 21:39:32 · 276 阅读 · 2 评论 -
四种简单的排序算法
部分排序算法总结冒泡排序原理:相连两个数据两两比较,后者小于前者,交换位置,执行第一趟比较后,最后一个位置的元素一定是最大的元素;第二趟重复以上过程,直到比较到倒数第二个位置结束,倒数第二个位置一定是次最大的重复上述过程,直到最后一趟比较完成,整个数据完成排序源码:void burbSort(int number[], int length){ int i, j, temp;原创 2017-01-04 18:43:24 · 899 阅读 · 0 评论 -
java类执行顺序
加载器第一次加载某一个类时,执行顺序如下:先执行父类的静态变量和静态代码块,如果有初值为其赋值,没有就赋值默认初始值执行当前类的静态变量和静态代码块,如果有初值为其赋值,没有就赋值默认初始值执行当前类成员的默认赋值,int-0, boolean - false等执行当前类的构造方法,显示或者掩式调用父类的构造方法,如果构造方法代码块中有this,则在父类构造中就表示调用父类的属性,子类中就是原创 2016-10-10 12:04:24 · 287 阅读 · 0 评论 -
java中内存的那点事情
概念java栈 java栈内存是一块存储基本数据变量和对象引用的区域,其数据遵从后进先出的原则,栈数据回收的方式是根据其作用域来回收的,比如,在某个方法内,定义了一个指向某一对象的局部引用,改引用就创建在栈上,当这段方法代码执行完成后,其栈上的引用就会被回收,同时也顺应了先进后出的规则java堆 java堆内存是存对象实例和数组的区域,这块内存上的数据是由垃圾回收器进行垃圾回收,垃圾回收线程是一原创 2016-10-08 10:31:11 · 488 阅读 · 0 评论 -
abstract和接口的区别
概念abstract抽象类 抽象类是一种有抽象方法的类,抽象方法只有声明,没有具体的实现,同时抽象类也可以有默认的方法实现。public abstract class Test{ abstract void test();}接口 接口是比抽象类更抽象的事物,接口不是类,接口内部的方法全都只有声明没有实现;public interface Test{ void test();}特点抽象原创 2016-09-29 10:36:37 · 4644 阅读 · 0 评论 -
序列化java
1. 什么是序列化 Serializable?Serialization(序列化)是一种将对象以一连串的字节描述的过程;反序列化deserialization是一种将这些字节重建成一个对象的过程。简单来说就是对对象进行流化的一种处理机制,将对象流化后,方便以后将对象进行保存、传输3. 什么时候需要实现Serializable ?存储对象,网络传输对象时,需要将对象序列化,转原创 2016-02-03 15:10:35 · 320 阅读 · 0 评论 -
性能优化
ArrayList和Vector:区别,都是内存中以数组形式存储的list集合,前者线程不安全,后者线程安全;对于数据的随机访问,前者大于后者,但是其他方面就不敢恭维了,如下:arrayList有一个扩容策略,当新添加的数据容量超过当前容量,就会扩容当前容量的1.5倍,如果我现在扩充1个元素,就会浪费1.5倍-1的容量,这是内存的浪费,而且也有可能重新导致数组在内存中复制,效率降低;在这方原创 2015-12-08 11:56:00 · 486 阅读 · 0 评论 -
Java反射机制
反射机制概念:JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法;这种动态获取的信息以及动态调用对象的方法的功能称为java语言的反射机制。那么Java是如何动态的获取对象的方法和属性的呢?JVM需要哪个类,classLoder就会去加载这个类,让后根据.class文件生成一个独一无二的class对象,该class对象记载原创 2015-10-10 22:01:38 · 420 阅读 · 0 评论 -
观察者模式
观察者模式概念: 顾名思义,该模式分为两种角色,观察者和被观察者(主题),当主题状态发生改变,就把状态信息发送给每个观察者;实现过程大概为:观察者都实现同一个观察者接口,重写里面的消息通知方法(用于主题更新的方法);主题也实现一个接口,接口里面涉及对观察者列表的删除更新操作; 一对多的关系,这种场景可以用在传感器检测方面,传感器当作一个主题对象,传感器状态一发生变化,立即更新给他原创 2015-10-10 22:01:03 · 467 阅读 · 0 评论 -
代理模式
代理模式概念: 通常我们不想或者不能直接调用某一类,可以设计出另外一个类来代理我们想调用的类,这种替代其他类执行的模式叫代理模式代理模式的角色分为三种:真实类 代理类 抽象接口普通的代理模式实现方法: 原理:实质上是代理类事先有一个真实类的引用,故代理类里面可以调用真实类的方法 //抽象代类或接口public interface Subject{原创 2015-10-08 21:25:26 · 395 阅读 · 0 评论 -
设计模式 -- 责任链模式
责任链设计模式概念:使用多个对象处理请求,多个对象处于一条链关系,请求沿着这条链进行传递处理,直至该请求被处理为止。使用方法:1. 定义一个接口或抽象类2. 继承抽象类或者实现该接口3. 设定好多个处理对象的关系,上下家关系,呈现一条链的结构使用责任链的好处和优点:1. 如果不使用责任链的设计模式,采用简单的if - else进行设计处理,将会使代码变得原创 2015-10-08 18:32:48 · 503 阅读 · 0 评论 -
设计模式 --- 单例模式
单例模式: 单例模式,保证在JVM中只存在,该类的对象实例只存在一个; 好处:避免对象频繁的创建,特别是对一些占用很大资源的类来说,无疑是减轻了JVM很大的负担;同时也减轻GC垃圾回收的压力 对于一些重要的类必须要保证只存在一份对象实例;如交易所的交易引擎普通的使用方法如下:public class SingleMode { private static Sing原创 2015-09-30 23:05:43 · 408 阅读 · 0 评论 -
设计模式 --- 工厂模式
工厂模式: 对实现同一接口的不同类,用一个工厂类,根据传入的参数/调用方法/静态方法来创造不同的产品,类的对象普通工厂模式: public interface Person{ public void getPerson(); } public class Student implements Person{ @Override p原创 2015-09-30 23:04:34 · 297 阅读 · 0 评论 -
JAVA异常
框架图: 介绍: Throwable 可被抛出的异常 Error 错误,这中异常不能被应用程序处理,一般都是JVM出现的异常,如一些JVM的内存泄漏/溢出等异常 Exception 异常,是可以被程序处理的异常,它分为运行时异常和非运行时异常 运行时异常包括:RuntimeException及其子类,这类异常,在编译时不会处理,运行行时出现原创 2015-09-24 23:47:18 · 462 阅读 · 0 评论 -
多线程JAVA
线程中常见的方法:Thread.yeild(); 建议线程调度器,我已经执行完了任务的重要部分,此刻正是把cpu切换给其他任务的最佳时期Thread t;t.join(); //当前线程等待t线程执行完后在执行当前线程;t.join(millsecond); //等待多长时间后产生中断异常线程池: JAVA5后推荐使用这种,大致分为四种类别的线程池: Ex原创 2015-09-24 23:45:07 · 377 阅读 · 0 评论 -
java数据结构
java数据类图:常用的方法:类 Arrays 的 static <T> List<T>asList(T... a);返回一个T的List类 Collections的 static <T> booleanaddAll(Collection<? super T> c, T... elements)将后面的多个参数添加到前...原创 2015-09-23 22:31:39 · 483 阅读 · 0 评论 -
android学习笔记 sufaceView
Android之SurfaceView学习(一)首先我们先来看下官方API对SurfaceView的介绍SurfaceView的API介绍Provides a dedicated drawing surface embedded inside of a view hierarchy. You can control the format of this surface an转载 2014-08-22 21:50:14 · 654 阅读 · 0 评论