- 博客(41)
- 资源 (3)
- 收藏
- 关注
转载 为什么不能在Activity中的属性里创建Button的实例,会报空指针
资源还没创建好就调用,所以是空指针。关于super.onCreate()的注释: Called when the activity is starting. This is where most initialization should go: calling setContentView(int)} to inflate the activity's UI, using findV
2017-03-21 18:55:15 974
转载 Android中MainActivity.this和this的区别
本质上是没区别的.但是有时候必须要用MainActivity.this 这样的,比如某个控件 setOnClickListener(); 在括号里面new 一个OnClickListener ,然后在onClick方法里面处理的时候必须要用MainActivity.this 而不能用this.表示的就是MainActivity这个类对象本来,这种写法一般用在内部类里,因为在外部
2017-03-20 22:53:08 4528 1
转载 Android中的sp和dp的区别
Android里面的sp和dp网上有很多文章都谈过了,但是看后总有一种意犹未尽的感觉。现在我也来谈谈dp和sp,和大家交流一下,不对之处欢迎拍砖。一、dp(或者dip device independent pixels)一种基于屏幕密度的抽象单位。在每英寸160点的显示器上,1dp=1px。不同设备有不同的显示效果,这个和设备硬件有关。android里的代码如下:
2017-03-20 19:27:54 916
转载 Android电话拨号器问题以及CALL和DIAL的区别
public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout
2017-03-20 19:13:32 3232
转载 Java TCP/UDP socket 编程流程总结
最近正好学习了一点用java socket编程的东西。感觉整体的流程虽然不是很繁琐,但是也值得好好总结一下。Socket Socket可以说是一种针对网络的抽象,应用通过它可以来针对网络读写数据。就像通过一个文件的file handler就可以都写数据到存储设备上一样。根据TCP协议和UDP协议的不同,在网络编程方面就有面向两个协议的不同socket,一个是面向字节流的一个是
2017-03-18 20:59:08 313
转载 JAVA IO流总结
今天刚刚看完Java的io流操作,把主要的脉络看了一遍,不能保证以后使用时都能得心应手,但是最起码用到时知道有这么一个功能可以实现,下面对学习进行一下简单的总结: IO流主要用于硬板、内存、键盘等处理设备上得数据操作,根据处理数据的数据类型的不同可以分为:字节流(抽象基类为InPutStream和OutPutStream)和字符流(抽象基类为Reader和Writer)。根据
2017-03-18 20:23:41 318
转载 JAVA中常见的三种打印异常的方式
java抛出异常的方法有很多,其中最常用的两个:System.out.println(e),这个方法打印出异常,并且输出在哪里出现的异常,不过它和另外一个e.printStackTrace()方法不同。后者也是打印出异常,但是它还将显示出更深的调用信息。比如说:A extends ---> B extends ----> C当在创建A的过程中出现问题了,我们抛出异
2017-03-18 20:20:27 23923
转载 JAVA中System.in的具体内容
System.in Java在java.lang.System类中声明了3个常量in、out、err,用于实现标准输入/输出功能。 声明如下: public final class System extends Object { public final static InputStream in = nullInputStream(); //standard input constant
2017-03-18 14:26:02 3397
原创 JAVA类细节
类中只能包含属性、方法、内部类。public class Test{ int[] a; a = new int[5];}D:\>javac Test.javaTest.java:4: 错误: 需要 a = new int [5]; ^1 个错误编译失败,a=new int [5];不是属性、方法或内部类,是赋值语句,不能存在于类中
2017-03-18 14:02:56 230
转载 java中string.trim()函数的使用
trim():去掉字符串首尾的空格。 [java] view plain copypublic static void main(String arg[]){ String a=" hello world "; String b="hello world";
2017-03-18 13:39:23 1847 1
转载 Java:String、StringBuffer和StringBuilder的区别
目录(?)[-]StringStringBufferJDK10StringBuilderJDK50三者区别使用策略1 StringString:字符串常量,字符串长度不可变。Java中String是immutable(不可变)的。String类的包含如下定义:[java] view plain copy /**
2017-03-17 21:15:14 251
转载 JAVA枚举(enum)详解7种常见的用法
DK1.5引入了新的类型——枚举。在 Java 中它虽然算个“小”功能,却给我的开发带来了“大”方便。用法一:常量在JDK1.5 之前,我们定义常量都是: public static fianl.... 。现在好了,有了枚举,可以把相关的常量分组到一个枚举类型里,而且枚举提供了比常量更多的方法。 Java代码 public enum Color {
2017-03-17 10:40:17 965
转载 MAP
Map层次结构Map[plain] view plain copy实现类 HashMap,LinkedHashMap,Hashtable 子接口 SortedMap 实现类 TreeMap 映射集,键值集合 Map增加对象时,如果key值在Map已经
2017-03-16 21:06:18 232
转载 JAVA中ListIterator和Iterator的详解与辨析
在使用Java集合的时候,都需要使用Iterator。但是java集合中还有一个迭代器ListIterator,在使用List、ArrayList、LinkedList和Vector的时候可以使用。这两种迭代器有什么区别呢?下面我们详细分析。这里有一点需要明确的时候,迭代器指向的位置是元素之前的位置,如下图所示: 这里假设集合List由四个元素List
2017-03-16 17:39:29 324
转载 关于Iterator的remove()方法
Iterator的remove()方法只能删除之前next()方法返回的数据,否则会报错。 今天看到,java的NIO里面的SelectionKey,处理完key后,调用keyIterator.remove(); 对Iterator的remove()方法不是很熟悉,小测试了下,代码如下: ListString> list = new ArrayList
2017-03-16 17:29:32 3941
原创 关于HashSet中的无序问题
import java.util.*;public class Test{ public static void main(String[] args) { HashSet hs = new HashSet(); hs.add("B"); hs.add("A"); hs.add("D"); hs.add("E"); hs.add("C"); hs.add("F"
2017-03-16 15:55:26 2038 1
转载 JAVA中 intValue,parseInt,valueOf这三个关键字的区别
intValue()是把Integer对象类型变成int的基础数据类型;parseInt()是把String 变成int的基础数据类型;Valueof()是把给定的String参数转化成Integer对象类型;(现在JDK版本支持自动装箱拆箱了。)intValue()用法与另外两个不同,比如int i = new Integer("123"), j = i.intValue(); 相当于
2017-03-16 15:09:54 932
原创 JAVA IO包中的类层次关系
字节输入流(InputStream)字节输出流(OutputStream)字符输入流(Reader)字符输出流(Writer)
2017-03-14 18:31:17 1576
转载 JAVA中length,length()和size()的区别
1 java中的length属性是针对数组说的,比如说你声明了一个数组,想知道这个数组的长度则用到了length这个属性.2 java中的length()方法是针对字符串String说的,如果想看这个字符串的长度则用到length()这个方法.3.java中的size()方法是针对泛型集合说的,如果想看这个泛型有多少个元素,就调用此方法来查看!这个例子来演示这两个方法和一个属性的用法
2017-03-12 16:36:33 622
原创 JAVA中基本数据类型所占内存空间大小
byte 1个字节boolean 1个字节short 2个字节char 2个字节int 4个字节float 4个字节long 8个字节double 8个字节
2017-03-12 16:21:09 7066 1
转载 Java线程的5种状态及切换(透彻讲解)
Java中的线程的生命周期大体可分为5种状态。①NEW:这种情况指的是,通过New关键字创建了Thread类(或其子类)的对象②RUNNABLE:这种情况指的是Thread类的对象调用了start()方法,这时的线程就等待时间片轮转到自己这,以便获得CPU;第二种情况是线程在处于RUNNING状态时并没有运行完自己的run方法,时间片用完之后回到RUNNABLE状态;还有种情况就是
2017-03-12 11:18:19 515
原创 JAVA线程间通信(生产者消费者)
wait、notify、nofityAll这三个方法只能在synchronized方法中调用,既无论线程调用一个对象的wait还是nofity方法,该线程必须先得到该对象的锁标记,这样,notify只能唤醒同一个对象监视器中调用wait的线程,使用多个对象监视器,就可以分别有多个wait、notify的情况。同组里的wait只能被同组的notify唤醒。一个线程的等待和唤醒过程可以通过以下来表
2017-03-12 09:42:22 282
转载 java synchronized详解
记下来,很重要。Java语言的关键字,当它用来修饰一个方法或者一个代码块的时候,能够保证在同一时刻最多只有一个线程执行该段代码。 一、当两个并发线程访问同一个对象object中的这个synchronized(this)同步代码块时,一个时间内只能有一个线程得到执行。另一个线程必须等待当前线程执行完这个代码块以后才能执行该代码块。 二、然而,当一个线程访问ob
2017-03-11 16:15:27 220
转载 JAVA中的死锁问题
下面是一段 强制死锁出现的代码,基本我都懂,但有几个小细节不是很明白class A {public synchronized void funA(B b) {String name=Thread.currentThread().getName();System.out.println(name+"进入funA");try {Thread.sleep(1000);}
2017-03-11 12:50:18 343
转载 JAVA interrupt、interrupted和isInterrupted的区别
提前总结:interrupt() 向当前调用者线程发出中断信号isinterrupted() 查看当前中断信号是true还是falseinterrupted() 是静态方法,查看当前中断信号是true还是false并且清除中断信号,顾名思义interrupted为已经处理中断信号。注:interrupt()方法发出的中断信号只能被wait() sleep() joi
2017-03-11 11:24:44 8035 1
转载 java main 线程既然被interrupt中断 为什么还会运行后面的
以下转自百度知道:这是代码:public class InterruptCheck {public static void main(String[] args) {Thread t=Thread.currentThread();System.out.println("A: isInterrupted="+t.isInterrupted());t.interrupt();
2017-03-11 10:09:46 6791 5
转载 Thread.join()方法解析
API:joinpublic final void join() throws InterruptedException等待该线程终止。抛出:InterruptedException - 如果任何线程中断了当前线程。当抛出该异常时,当前线程的中断状态 被清除。joinpublic final voi
2017-03-10 19:43:58 328
原创 JAVA中包的概念及使用
package是在使用多个类或接口时,为了避免名称重复而采用的一种措施。具体使用方法:在类或接口的最上面一行加上package的声明就可以了。格式:package package名称;范例:package demo.java;class Add{ void add(int a,int b) throws Exception { int c; c = a /
2017-03-09 15:07:10 1017
转载 Java中equals和==的区别
Java中equals和==的区别java中的数据类型,可分为两类:1.基本数据类型,也称原始数据类型。byte,short,char,int,long,float,double,boolean他们之间的比较,应用双等号(==),比较的是他们的值。2.复合数据类型(类)当他们用(==)进行比较的时候,比较的是他们在内存中的存放地址,所以,除非是同一个new出来的对象,他们的
2017-03-09 13:24:31 185
原创 JAVA中this和super的比较
this:1.表示当前对象2.调用本类中的方法和属性3.调用本类中的构造方法时,放在程序首行。super:1.子类调用父类的方法或属性2.调用父类中构造方法时,放在程序首行。
2017-03-09 10:03:42 332
转载 浅谈Android五大布局——LinearLayout、FrameLayout和AbsoulteLayout
博客原始地址:http://blog.csdn.net/hh2000/article/details/41510653 Android的界面是有布局和组件协同完成的,布局好比是建筑里的框架,而组件则相当于建筑里的砖瓦。组件按照布局的要求依次排列,就组成了用户所看见的界面。Android的五大布局分别是LinearLayout(线性布局)、FrameLayout(单帧布局)、Relat
2017-03-08 18:07:05 282
转载 JAVA context解释
Context在Java中的出现是如此频繁.但是今天有人问我context是什么意思,当倒晕倒,说真的,我也不知道context是什么意思.就如人家问我(1+1为什么等于2).经过cotext.我行说说我的看法吧先来举几个JAVA中用到Context的例子(1)JNDI的一个类javax.naming.InitialContext,它读取JNDI的一些配置信息,并内含对象和其在JN
2017-03-07 19:54:30 7948
转载 Java中this关键字在构造方法中的使用
1. Java中this关键字代表对象本身。用this关键字可以在类的内部调用属性和方法,这样代码的可读性比较高,因为它明确的指出了这个属性或方法的来源。2. 同时在构造函数中也可以使用this关键字调用本类中的其它构造函数,但有几点需要注意:构造函数调用其它构造函数,需要将this写在构造函数的第一行。构造函数不可递归,防止死循环。3. 一个类的构造函数分为无参和有参构造
2017-03-07 19:44:57 7060 1
转载 JAVA中堆和栈的区别
在函数中定义的一些基本类型的变量和对象的引用变量都在函数的栈内存中分配。 当在一段代码块定义一个变量时,Java就在栈中为这个变量分配内存空间,当超过变量的作用域后,Java会自动释放掉为该变量所分配的内存空间,该内存空间可以立即被另作他用。 堆内存用来存放由new创建的对象和数组。 在堆中分配的内存,由Java虚拟机的
2017-03-07 18:49:13 219
转载 @SerializedName注解
在Android中解析Gson解析json数据是很方便快捷的,可以直接将json数据解析成java对象或者集合。 Gson解析json的方法我这里就不详细说明了,网上一大把的例子,我这里主要说一下使用@SerializedName进行注解的情况。 使用Gson解析json成对象时默认的是将json里对应字段的值解析到java对象里对应字段的属性里面。然后我们经常会遇到我们自己定义的ja
2017-03-06 19:29:26 697
转载 Json与Gson
JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式,易于阅读和编写,同时也易于机器解析和生成。同XML一样是一种“传输格式”。JSON采用与编程语言无关的文本格式,便于数据传输、存储、交换。(Json和Xml更多比较)Json和XMl相比,具有以下优点:1. 数据格式比较简单, 易于读写, 格式都是压缩的, 占用带宽小,浏览器解析快
2017-03-06 19:23:52 289
转载 Java多态中重载方法参数分别为父类和子类时的疑惑
问题:代码如下: class A { public String show(D obj){ return ("A and D"); } public String show(A obj){ return ("A and A"); } } class B extends A{
2017-03-04 21:13:02 6964
原创 Android中查看开发keystore
AndroidStudio使用了一个默认的keystore文件帮我们自动进行了签名。点击AndroidStudio右侧工具栏的Gradle→项目名→:app→Tasks→android,双击signingReport,然后在右下角打开Gradle console 就能看到具体信息了。
2017-03-04 12:25:38 438
转载 java int与integer的区别
int与integer的区别从大的方面来说就是基本数据类型与其包装类的区别:int 是基本类型,直接存数值,而integer是对象,用一个引用指向这个对象1.Java 中的数据类型分为基本数据类型和复杂数据类型int 是前者而integer 是后者(也就是一个类);因此在类进行初始化时int类的变量初始为0.而Integer的变量则初始化为null.2.初始化时: int i
2017-03-02 18:32:03 314
原创 JAVA中char和String/值类型和引用类型的区别
import java.util.*;class test{ public static void main(String[] args) { char a[] = {'b', 'a', 'c'}; String b = "111"; f(a,b); System.out.println(Arrays.toString(a)+" "+b); } public
2017-03-02 16:35:52 4129
android开发使用的ADB免安装版
2017-01-07
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人