
java基础
Rose-
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
异常简介
1.java中所有异常类会直接或间接继承Exception类2.异常分为两大类:a) Checked Exception即 非runtime exception(非运行时异常)b) Unchecked Exception 即 runtime Exception(运行时异常)3.RuntimeException也是直接继承于Exception类,那么原创 2014-12-15 15:37:29 · 824 阅读 · 0 评论 -
Ascll字符集,Unicode字符集简单了解
Ascll字符集:仅仅将英文字母和阿拉伯数字还有一些常用的符号进行了二进制的编码。Unicode字符集:总的来说为每种语言的每个字符设定了统一且唯一的十六进制编码;因此它满足了跨语言文本转换和处理的需求;使用数字0-0x10ffff来表示字符;最多允许有1114112个字符。乱码:存字符集和取字符集用的编码字符集不一样导致的。原创 2014-12-13 15:07:19 · 1028 阅读 · 0 评论 -
java对象初始化过程
初始化顺序:父类静态变量—>父类静态代码块—>子类静态变量—>子类静态代码块—>父类非静态变量—>父类非静态代码块—>父类构造方法—>子类非静态变量—>子类非静态代码块—>子类构造方法。 class Father{ //1 private static int fs=10; //2 static{ System.out.println("1.父类静态变量fs="转载 2014-12-11 13:43:46 · 520 阅读 · 0 评论 -
使用final关键字修饰一个变量时,是引用不能变,还是引用的对象不能变?
使用final关键字修饰一个变量时,是指引用变量不能变,引用变量所指向的对象中的内容还是可以改变的。例如,对于如下语句: final StringBuffer a=new StringBuffer("immutable");执行如下语句将报告编译期错误:a=new StringBuffer("");但是,执行如下语句则可以通过编译:a.append(" broken!");转载 2014-12-08 16:52:54 · 832 阅读 · 0 评论 -
反射的一些性质
反射:第一点:切记是运行时的行为。第二点:一个类的所有对象都会对应于Class类的同一个对象。第三点:获取一个类或对象对应的class对象的方法:1、类名.class 例如:String.class2、Class.forName(“类的地址,例如:java.lang.reflect.test”)3、使用对象的getClass()方法;例如:String a=“aa”原创 2014-12-11 20:04:29 · 1304 阅读 · 0 评论 -
简单区分“/”和“\”的用法
“/”和“\”的用法 要想获取网络上或者说服务器上的资源,用/; 要获取硬盘上资源,用\。原创 2014-11-25 17:25:06 · 2889 阅读 · 0 评论 -
&和&&的区别。
相同点: &和&&都可以用作逻辑与的运算符,表示逻辑与(and),当运算符两边的表达式的结果都为true时,整个运算结果才为true,否则,只要有一方为false,则结果为false。不同点: &&还具有短路的功能,即如果第一个表达式为false,则不再计算第二个表达式,例如,对于if(str != null && !str.equals(“”))表达式,当str为null转载 2014-12-04 20:18:22 · 531 阅读 · 0 评论 -
环境变量,jre,jvm作用简单介绍
为什么要配置环境变量:1、什么是环境变量?环境变量指的是在操作系统当中,用来指定操作系统运行时需要的一些参数;环境变量通常为一系列的键值对。2、在命令行窗口使用的命令,例如:ipconfig命令,其实ipconfig是存在于操作系统的某个目录下的一个ipconfig.exe可执行文件,在窗口中输入ipconfig这条命令后,计算机就会通过配置好的环境变量中的pa原创 2014-12-13 15:02:20 · 839 阅读 · 0 评论 -
Integer与int的区别
int是java提供的8种原始数据类型之一。Java为每个原始类型提供了封装类,Integer是java为int提供的封装类。int的默认值为0,而Integer的默认值为null,即Integer可以区分出未赋值和值为0的区别,int则无法表达出未赋值的情况,例如,要想表达出没有参加考试和考试成绩为0的区别,则只能使用Integer。在JSP开发中,Integer的默认为nu转载 2014-12-12 20:48:11 · 424 阅读 · 0 评论 -
"=="和equals方法究竟有什么区别?
==操作符专门用来比较两个变量的值是否相等,也就是用于比较变量所对应的内存中所存储的数值是否相同,要比较两个基本类型的数据或两个引用变量是否相等,只能用==操作符。 如果一个变量指向的数据是对象类型的,那么,这时候涉及了两块内存,对象本身占用一块内存(堆内存),变量也占用一块内存,例如Objet obj = new Object();变量obj是一个内存,new Object()转载 2014-12-08 16:54:43 · 713 阅读 · 0 评论 -
SeekBar的onProgressChanged方法的参数说明
背景:自己写音乐播放器的时候,发现播放音乐时每次代码更新进度条都会触发SeekBar的onProgressChanged这个方法,更新当前播放歌曲的位置,导致歌曲播放又从更新的位置开始,后来发现如下解决方法:SeekBar.setOnSeekBarChangeListener监听后,回调接口里面的方法@Override public void onProgressChanged(SeekBar s原创 2016-09-04 22:26:08 · 13955 阅读 · 2 评论 -
short s1 = 1; s1 = s1 + 1;有什么错? short s1 = 1; s1 += 1;有什么错?
对于short s1 = 1; s1 = s1 + 1; 由于s1+1运算时会自动提升表达式的类型,所以结果是int型,再赋值给short类型s1时,编译器将报告需要强制转换类型的错误。对于short s1 = 1; s1 += 1;由于 += 是java语言规定的运算符,java编译器会对它进行特殊处理,因此可以正确编译。转载 2014-12-05 21:10:00 · 761 阅读 · 0 评论 -
静态变量和实例变量的区别?
在语法定义上的区别:静态变量前要加static关键字,而实例变量前则不加。在程序运行时的区别:实例变量属于某个对象的属性,必须创建了实例对象,其中的实例变量才会被分配空间,才能使用这个实例变量。静态变量不属于某个实例对象,而是属于类,所以也称为类变量,只要程序加载了类的字节码,不用创建任何实例对象,静态变量就会被分配空间,静态变量就可以被使用了。总之,实例变量必须创建对象后才可以通过这个对象来转载 2014-12-10 21:13:16 · 636 阅读 · 0 评论 -
自定义异常简介
1.所谓自定义异常,通常就是自定义了一个继承了Exception类的子类,这样的类就是自定义异常类。2.通常情况下,我们都会直接继承自Exception类,一般不会继承某个运行时的异常。3.我们可以用多个catch块来捕获异常,这时需要将父类型的catch块放到子类型的catch块后面,这样才能保证后续的catch块可能会被执行,否则子类型的catch块将无法到达,java原创 2014-12-15 15:40:22 · 1094 阅读 · 0 评论 -
对象的深拷贝,浅拷贝
对象的clone:要想实现某个类的对象的clone,可以按以下几点来操作:1.这个类必须实现Cloneable这个标示性接口;2.这个类要重写父类的clone方法;3.把这个clone方法访问权限设置为public;4.这个clone方法中调用了super.clone()方法,返回当前类的引用;5.以上四步仅仅是实现了对象的浅复制,浅拷贝,浅克隆。注意:对象的浅拷贝,得原创 2014-12-18 17:02:56 · 556 阅读 · 0 评论 -
java线程
1. 一个进程至少包含一个线程。2. 对于单核cpu来说,某一时刻只能有一个线程在执行(微观串行),从宏观角度来看,多个线程在同时执行(宏观并行)。3. 对于双核或者双核以上的cpu来说,可以真正做到微观并行。4. 线程的实现方式有两种,第一种是继承thread类,然后重写其run方法; 第二种是实现Runnable接口,然后实现其run方法。原创 2014-12-18 17:15:56 · 816 阅读 · 0 评论 -
switch语句能否作用在byte上,能否作用在long上,能否作用在String上?
在switch(expr1)中,expr1只能是一个整数表达式或者枚举常量(更大字体),整数表达式可以是int基本类型或Integer包装类型,由于,byte,short,char都可以隐含转换为int,所以,这些类型以及这些类型的包装类型也是可以的。显然,long和String类型都不符合switch的语法规定,并且不能被隐式转换成int类型,所以,它们不能作用于swtich语句中。转载 2014-12-04 20:55:49 · 651 阅读 · 0 评论 -
四种内部类简单介绍(inner class)
1.静态内部类(static inner class):只能访问外部类的静态成员变量和静态方法,生成静态内部类的方式为:StaticInner.Inner inner=new StaticInner.Inner();2.成员内部类(member inner class):A)可以当做成员变量来看待理解,可以访问外部类的静态与非静态方法和成员变量,生成成员内部类的方式原创 2014-12-15 15:32:51 · 1635 阅读 · 0 评论 -
序列化简单认识
1.序列化:把对象从内存存储到文件中。2.反序列化:把对象从文件中加载到内存中。3.一个类要想被序列化,则需要实现java.io.serializable接口,该接口中没有定义任何方法,是一个标识性接口(Marker interface);当一个类实现了该接口,就表示这个类的对象是可以序列化的。4.如果一个被序列化的对象a引用了其他对象b,那么b也是可以在a被序原创 2014-12-15 15:42:30 · 538 阅读 · 0 评论 -
Overload和Override的区别
Overload是重载的意思,Override是覆盖的意思,也就是重写。重载Overload表示同一个类中可以有多个名称相同的方法,但这些方法的参数列表各不相同(即参数个数或类型不同)。重写Override表示子类中的方法可以与父类中的某个方法的名称和参数完全相同,通过子类创建的实例对象调用这个方法时,将调用子类中的定义方法,这相当于把父类中定义的那个完全相同的方法给覆盖了,这也是面向转载 2014-12-14 22:22:54 · 791 阅读 · 0 评论 -
char型变量中能不能存贮一个中文汉字?为什么?
char型变量是用来存储Unicode编码的字符的,unicode编码字符集中包含了汉字,所以,char型变量中当然可以存储汉字啦。 不过,如果某个特殊的汉字没有被包含在unicode编码字符集中,那么,这个char型变量中就不能存储这个特殊汉字。补充说明:unicode编码占用两个字节,所以,char类型的变量也是占用两个字节。转载 2014-12-05 21:13:20 · 592 阅读 · 0 评论 -
wait()方法和 sleep()方法的区别是什么?
sleep(100L)是占用cpu,线程休眠100毫秒,其他进程不能再占用cpu资源,wait(100L)是进入等待池中等待,交出cpu 等系统资源供其他进程使用,在这100毫秒中,该线程可以被其他线程notify,但不同的是其他在等待池中的线程不被notify不会出来,但这个线程 在等待100毫秒后会自动进入就绪队列等待系统分配资源,换句话说,sleep(100)在100毫秒后肯定会运行,但wa转载 2015-03-24 15:04:25 · 597 阅读 · 0 评论 -
作用域public,private,protected,以及不写时的区别
这四个作用域的可见范围如下表所示。说明:如果在修饰的元素上面没有写任何访问修饰符,则表示friendly。 作用域 当前类 同一package 其他package子孙类 其他 package public √ √ √ √ protected √ √ √转载 2014-12-13 20:57:43 · 988 阅读 · 0 评论 -
Java深拷贝,浅拷贝
1.对象的clone: 要想实现某个类的对象的clone,可以按以下几点来操作: 1.这个类必须实现Cloneable这个标示性接口; 2.这个类要重写父类Object的clone方法; 3.把这个clone方法访问权限设置为public; 4.这个clone方法中调用了super.clone()方法,返回当前类的引用; 5.以上四步仅仅是实现了对象的浅复制,浅拷贝,浅克隆。 注意:对翻译 2017-03-01 12:00:38 · 726 阅读 · 0 评论