![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Java 基础
程序邦
1. 擅长Android 开发
2. 擅长React Native 跨平台开发
展开
-
java面试题及答案(基础题122道,代码题19道)
转载自:http://www.blogjava.net/fanyingjie/archive/2007/06/27/126467.aspxJAVA相关基础知识1、面向对象的特征有哪些方面 1.抽象:抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面。抽象并不打算了解全部问题,而只是选择其中的一部分,暂时不用部分细节。抽象包括两个方面,一是过程抽象,转载 2015-01-26 17:35:11 · 677 阅读 · 0 评论 -
Java中使用LinkedList实现栈与队列
Java中的LinkedList 是采用双向循环列表实现的。利用LinkedList 可以实现栈(stack)、队列(queue)、双向队列(double-ended queue)请看下面两个例子:1、栈(stack):后进先出(LIFO),仅对栈顶元素操作。import java.util.LinkedList;class MyStack{ priv原创 2017-02-17 11:06:53 · 4095 阅读 · 0 评论 -
java堆栈类使用实例(java中stack的使用方法)
java中stack的使用方法,堆栈是一种"后进先出"(LIFO) 的数据结构, 只能在一端进行插入(称为"压栈") 或删除 (称为"出栈")数据的操作,下面看示例吧JAVA 中,使用 java.util.Stack 类的构造方法创建对象。 public class Stack extends vector 构造方法 : public Stack() 创建一个空 Sta原创 2017-01-18 17:03:52 · 1007 阅读 · 0 评论 -
Java面试题集
转载自:http://blog.csdn.net/dd864140130/article/details/55833087目录(?)[-]相关概念面向对象的三个特征多态的好处代码中如何实现多态虚拟机是如何实现多态的接口的意义抽象类的意义接口和抽象类的区别父类的静态方法能否被子类重写什么是不可变对象能否创建一个包含可变对象的不可变对象java 创建对象的几转载 2017-02-21 10:59:29 · 666 阅读 · 0 评论 -
LinkedHashMap的accessOrder的作用
LinkedHashMap的构造方法有一个是这样子的:1 public LinkedHashMap(int initialCapacity,2 float loadFactor,3 boolean accessOrder) {4 super(initialCapacity, loadFacto原创 2017-06-16 16:10:32 · 1874 阅读 · 0 评论 -
Java 基础 一文看懂Java垃圾回收机制
什么是Java堆内存垃圾回收机制是 Java 非常重要的特性之一,也是面试题的常客。它让开发者无需关注空间的创建和释放,而是以守护进程的形式在后台自动回收垃圾。这样做不仅提高了开发效率,更改善了内存的使用状况。今天本文来对垃圾回收机制进行讲解,主要涉及下面几个问题:什么是堆内存?什么是垃圾?原创 2017-06-29 14:37:41 · 392 阅读 · 0 评论 -
深入研究java.lang.ThreadLocal类
一、概述 ThreadLocal是什么呢?其实ThreadLocal并非是一个线程的本地实现版本,它并不是一个Thread,而是threadlocalvariable(线程局部变量)。也许把它命名为ThreadLocalVar更加合适。线程局部变量(ThreadLocal)其实的功用非常简单,就是为每一个使用该变量的线程都提供一个变量值的副本,是Java中一种较为特殊的线程绑定机制原创 2017-09-14 16:26:22 · 205 阅读 · 0 评论 -
JAVA中如何随机生成确定范围中的随机数
Java中生成确定范围中的随机数,有两种方法:(1)使用util包下面的Random类,Random类中有一个nextInt()方法,用于生成随机的整数。nextInt(int n),参数n表示0 下面例子,随机生成50个[10, 50]之间的随机数。[java] view plain copyimport原创 2017-09-01 11:49:13 · 10285 阅读 · 0 评论 -
Android之多线程实现方式及并发与同步
前言:说到多线程,就不得不先说它和进程的关系,这里先简单解释一下,当一个app程序启动时系统默认有一个进程和主线程,在程序运行中想要异步操作,就会创建不止一个子线程即多线程。用多线程只有一个目的,那就是更好的利用cpu的资源,因为所有的多线程代码都可以用单线程来实现。说这个话其实只有一半对,因为反应“多角色”的程序代码,最起码每个角色要给他一个线程吧,否则连实际场景都无法模拟,当然也没法说能用单线转载 2017-09-11 10:10:19 · 8141 阅读 · 0 评论 -
JAVA 反射 调用系统隐藏方法
private ActivityManager am; public Object callMethod(ActivityManager activityManager, Method method, Object... args) { try { return method.invoke(activityManager, args);原创 2017-09-19 15:47:14 · 1161 阅读 · 0 评论 -
HttpClient和HttpURLConnection的区别
HttpClient是个开源框架,封装了访问http的请求头,参数,内容体,响应等等, HttpURLConnection是java的标准类,什么都没封装,用起来太原始,不方便HttpClient实际上是对Java提供方法的一些封装,在HttpURLConnection中的输入输出流操作,在这个接口中被统一封装成了HttpPost(HttpGet)和HttpResp原创 2017-01-17 10:28:10 · 304 阅读 · 0 评论 -
代码整洁之道笔记(三)
C1不恰当的信息: 让注释传达本该更好地在源代码控制系统、问题追踪系统或者任何其他记录系统中保存的信息,是不恰当的。例如修改历史记录只会用大量过时而无趣的文本搞乱源代码文件 。通常,作者、最后修改时间、SPR数等元素不该在注释中出现。注释只该描述有关代码和设计的技术性信息。但是对于一个类的注释我觉得有必要增加作者信息,特别是针对SDK,这样的话可以让人了解到谁开发的这个系统,后续维护十分有原创 2017-01-11 17:03:03 · 319 阅读 · 0 评论 -
代码整洁之道笔记(二)
第四章(注释) 简单函数的注释完全没有必要,可以从方法名以及返回值命名入手。来清楚表达该函数的作用。可以去看一下,我们现在大部分注释都是这类注释。TO-DO的重要性,如果你在编写某个函数的时候,觉得有些问题没有想清楚,一定要加上 TO-DO注释,告知将来这里会做什么对于注释掉的代码可以直接删除掉,我们可能会想,应该在将来会用到。但是我们现在有了SVN 等版本控制系统,完全不用担心代码找不回原创 2017-01-11 16:56:18 · 284 阅读 · 0 评论 -
List和ArrayList的区别
1.List是接口,List特性就是有序,会确保以一定的顺序保存元素. ArrayList是它的实现类,是一个用数组实现的List. Map是接口,Map特性就是根据一个对象查找对象. HashMap是它的实现类,HashMap用hash表实现的Map,就是利用对象的hashcode(hashcode()是Object的方法)进行快速散列查找.(关于散列查找,可以参看原创 2015-02-03 09:22:38 · 1286 阅读 · 0 评论 -
收集的一些正则表达式
匹配双字节字符(包括汉字在内):[^x00-xff] 评注:可以用来计算字符串的长度(一个双字节字符长度计2,ASCII字符计1) 匹配空白行的正则表达式:ns*r 评注:可以用来删除空白行 匹配HTML标记的正则表达式:]*>.*?| 评注:网上流传的版本太糟糕,上面这个也仅仅能匹配部分,对于复杂的嵌套标记依旧无能为力 匹配首尾空白字符的正则原创 2015-02-03 09:17:46 · 458 阅读 · 0 评论 -
Java中List转换为数组,数组转List
今天写代码遇到一个奇怪的问题,具体代码不贴出了,写一个简化的版本。如下:ArrayList list=new ArrayList();String strings[]=(String [])list.toArray();这样写代码个人觉得应该没什么问题,编译也没有问题。可是具体运行的时候报异常,如下:Exception in thread "main" java.lang.Clas原创 2015-02-03 09:20:18 · 406 阅读 · 0 评论 -
Java面试题目整理
1. ArrayList,Vector, LinkedList 的存储性能和特性ArrayList 和 Vector 都是使用数组方式存储数据,此数组元素数大于实际存储的数据以便增加和插入元素,它们都允许直接按 序号索引元素,但是插入元素要涉及数组元素移动等内存操作,所以索引数据快而插入数据慢,Vector 由于使用了 synchroni zed 方法(线程安全),通常性能上较 Array原创 2015-02-05 13:28:31 · 428 阅读 · 0 评论 -
Java程序员从笨鸟到菜鸟之(十一)多线程讲解
转载自:http://blog.csdn.net/csh624366188/article/details/7318245 本文来自:曹胜欢博客专栏。转载请注明出处:http://blog.csdn.net/csh624366188 多线程是java应用程序的一个特点,掌握java的多线程也是作为一java程序员必备的知识。多线程指的是在单个程序中可以同时运行多个同的线程执行转载 2015-01-21 16:07:54 · 525 阅读 · 0 评论 -
GSON方式生成和解析json数据
客户端与服务器进行数据交互时,常常需要将数据在服务器端将数据转化成字符串并在客户端对json数据进行解析生成对象。但是用jsonObject和jsonArray解析相对麻烦。利用Gson和阿里的fastjson可以很方便的将下面四种常用的数据转换成json字符串,并能够将其解析成原数据对象。类型一:JavaBean类型二:List类型三:List类型四:List>原创 2015-01-23 15:52:24 · 796 阅读 · 0 评论 -
hashCode() 和equals() 区别和作用
本章的内容主要解决下面几个问题:1 equals() 的作用是什么?2 equals() 与 == 的区别是什么?3 hashCode() 的作用是什么?4 hashCode() 和 equals() 之间有什么联系?第1部分 equals() 的作用equals() 的作用是 用来判断两个对象是否相等。equals() 定义在JDK的Object.jav原创 2017-02-05 22:28:39 · 420 阅读 · 0 评论 -
代码整洁之道笔记(一)
第一章 (代码整洁的重要性) 好的代码,要注意的是: 去除重复代码提高表达力(达到让别人能够看懂,并且觉得,这段代码就是为了解决某个问题而生的)第二章(有意义的命名)简单规则 名副其实 变量、函数或者类的名称应该是已经答复了所有的大问题。它应该告诉你,它为什么会存在,它做什么事,应该怎么用。如果名称需要注释来补充,那就不算是名副其实了。举一个例子:原创 2017-01-11 16:53:35 · 309 阅读 · 0 评论 -
细说反射,Java 和 Android 开发者必须跨越的坎
转载自: http://blog.csdn.net/briblue/article/details/74616922写作是门手艺,笑对需要勇气。写下这个题目的时候,我压力比较大,怕的是费力不讨好。因为反射这一块,对于大多数人员而言太熟悉了,稍微不注意就容易把方向写偏,把知识点写漏。但是,我已经写了注解和动态代理这两个知识点的博客,阅读量还可以,这两个知识点是属于反射机制中的,现在对于注解和动态代理...转载 2018-03-07 14:55:08 · 188 阅读 · 0 评论