java
文章平均质量分 69
雨木林风-lin
行到水穷处,坐看云起时
展开
-
java学习笔记<五>instanceof运算符
instanceof运算符的前一个操作数通常是一个引用类型变量,后一个操作数通常是一个类(也可以是接口),它用于判断前面的对象是否是后面的类,或者其子类,实现类的实例。如果是,则返回true,如果不是就返回false 注:instanceof运算符前面操作数的编译时的类型要么与后面的类相同,要么与后面的类具有父子继承关系,否则会引起编译错误 public class InstanceofTes原创 2014-02-15 15:48:57 · 617 阅读 · 0 评论 -
java学习笔记<十五>List集合
List集合是一个有序,可重复的集合,它可以根据索引来访问对应的对象,第一个对象的索引是0,第二个对象的索引是1,类比数组的索引 List集合有以下操作集合的方法 void add( int index,a ) //把a元素插入到index索引处 boolean addAll(int index,c) //把集合c所有元素插入到index索引处 Object get(int ind原创 2014-02-17 19:56:38 · 437 阅读 · 0 评论 -
java学习笔记<十六>Queue集合
Queue用来模拟队列这种数据结构,队列通常是指“先进先出”。Queue有一个Priority实现类,还有一个Deque接口。Deque代表一个“双端队列”,双端队列可以从两端来添加,删除元素。 Queue接口定义了几个方法 void add(Object e) 将指定元素加入此队列的尾部 Object element() 获取队列头部的元素,但不删除元素 boolean off原创 2014-02-17 20:54:59 · 489 阅读 · 0 评论 -
java学习笔记<十四>set集合
HashSet类 HashSet按照Hash算法来存储集合中的元素,因此有很好的存取和查找性能 HashSet具有以下特点 1.不能保证元素的排列顺序,顺序可能与添加顺序不同 2.集合元素可以是null值 3.HashSet不是同步的,如果多线程同时访问一个 HashSet,假设有两个或者两个以上线程同修改了HashSet集合时,则必须通过代码来保证其同步 向HashSet存入一个对象原创 2014-02-17 16:57:28 · 472 阅读 · 0 评论 -
java学习笔记<十三>正则表达式
正则表达式是一个用来处理字符串的工具 1.创建正则表达式 $ 匹配一行的结尾 ^ 匹配一行的开头 () 标记子表达式的开始和结束位置 [] 用于确定中括号表达式的开始和结束位置 {} 用于标记前面字表达式的出现频度 * 指定前面字表达式可以出现零次或多次 +指定前面子表达式可以出现一次或多次 ?指定前面子表达式可以出现零次或一次 .匹配除换行符\n之外的任何单字符 |指原创 2014-02-17 13:17:28 · 465 阅读 · 0 评论 -
java学习笔记<十>接口
更彻底的抽象--接口(interface) 接口定义了一种规范,定义了某一批所要遵守的规范,接口不关心这些类的内部状态数据,也不关心这些类里方法的实现细节,它只规定这批类里必须提供某些方法。 定义接口需要使用interface这个关键字 一个接口可以有多个直接父接口,但接口只能继承接口,不能继承类。由于接口定义的是一种规范,因此接口不能包含构造器和初始化块,但可以包含field(只能是常量)原创 2014-02-15 21:31:53 · 439 阅读 · 0 评论 -
java学习笔记<九>抽象类
1.抽象类必须使用abstract修饰符来修饰,抽象方法也必须使用abstract修饰符来修饰,抽象方法不能有方法体 2.抽象类不能被实例化,无法使用new关键字来调用抽象类的构造器来创建抽象类的实例。即使这个抽象类里没有抽象方法,也不能创建实例。 3.抽象类可以包含field ,方法(抽象方法和普通方法),构造器,初始化块,内部类,枚举类6种成分。抽象类的构造器不能创建对象,主要用于被子类调原创 2014-02-15 20:35:34 · 462 阅读 · 0 评论 -
java学习笔记<四>多态
java引用变量有两个类型,一个是编译时类型,一个是运行时类型。编译时的类型由声明该变量时使用的类型决定,运行时类型由实际赋给变量的对象决定。如果编译时的类型跟运行时的类型不一致,就可能出现多态性。 class BaseClass { public int book=6; public void base() { System.out.println("原创 2014-02-15 15:26:17 · 498 阅读 · 0 评论 -
java学习笔记<三>继承
继承使用的是extends关键字,java中只是支持单继承,不支持多继承。 子类从父类中继承了父类的field,方法 public class Fruit { public double weight; public void info() { System.out.,println(this.weight); } } public class Apple e原创 2014-02-15 15:04:53 · 581 阅读 · 0 评论 -
java学习笔记<二>隐藏和封装
什么是封装? 封装是面像对象的三大特征之一,它指的是将对象的状态信息隐藏在对象内部,不允许外部程序直接访问对象内部的信息,而是用过该类所提供的方法来实现对内部信息的操作和访问 使用访问控制符 private,protect,public,另外还有一个不加任何访问控制符的级别,提供了4个访问控制级别。 访问级别由小到大的的书序是:private-default-protected-publi原创 2014-02-15 13:24:40 · 538 阅读 · 0 评论 -
java学习笔记<一>this关键字
this关键字总是指向调用该方法的对象:分为如下两个情形1.构造器中引用该构造器正在初始化的对象;2.在方法中引用调用该方法的对象 this关键字的最大作用就是让类中的一个方法中访问该类的另外一个方法或field 下面提供一个例子 假设定义一个dog对象,这个dog对象的run方法需要调用它的jump方法 public class Horse { //定义一个jump方法 pu原创 2014-02-15 13:01:20 · 524 阅读 · 0 评论 -
java学习笔记<十二>枚举类
当一个类的对象是有限并且固定时,在java中称作枚举类 java中用enum关键字来定义枚举类,枚举类可以实现一个或者多个接口,非抽象的枚举类默认会使用final修饰,因为枚举类不能派生出子类。枚举类的构造器只能用private修饰,枚举的所有实例必须在枚举类的第一行显示列出,否则这个枚举类不能产生实例,所有枚举类都提供一个values方法,该方法可以很快遍历所有枚举值 enum Seaso原创 2014-02-15 23:48:15 · 382 阅读 · 0 评论 -
java学习笔记<十一>内部类
内部类提供了更好的封装,可以把内部类隐藏在外部类之内,不允许同一个包内的其他类访问该类。假设需要创建一个Cow类,Cow类需要组合一个CowL对象,CowLeg类只有在Cow类里才有效,离开Cow类之后没有任何意义。在这种情况下就可以把CowLeg定义成Cow的内部类,不允许其他类访问CowLeg 内部类成员可以访问外部类的私有数据,因为内部类当作外部类的类成员,类成员之间可以互相访问,但是外部原创 2014-02-15 22:59:41 · 455 阅读 · 0 评论 -
java学习笔记<八>final修饰符
final关键字可以修饰类,变量,和方法,用于表示它修饰的类,方法,变量不可改变。final修饰变量时,表示该变量一旦获得了初始值就不可改变,final既可以修饰成员变量,也可以修饰局部变量,形参。final修饰的变量不可被改变,一旦获得了初始值,该final变量的值就不能被重新赋值 java语法规定;final修饰的成员变量必须由程序员显式地指定初始值。 类field:必须在静态初始化块中或原创 2014-02-15 20:09:02 · 486 阅读 · 0 评论 -
java学习笔记<七>初始化块与构造器
java使用构造器来对单个对象进行初始化操作,使用构造器先完成整个java对象的状态初始化,然后将java对象返回给程序,从而让该java对象的信息更加完整。 初始化块 初始化块是一段固定执行的代码,它不能接受任何参数。因此初始化块对同一个类的所有对象所进行的初始化处理完全相同。基于这个原因,如果有一段初始化处理代码对所有对象相同,且无需接收任何参数,就可以把这段初始化处理代码提取到初始化块中原创 2014-02-15 19:14:33 · 780 阅读 · 0 评论 -
java学习笔记<六>继承与组合
继承是实现类重用的重要手段,但继承带来了一个最大的坏处,破坏封装。相比之下,组合也是实现类重用的重要方式,而采用组合方式来实现类重用则能提供更好的封装。 为了保证父类的封装性,设计父类时应当注意的问题:1尽量隐藏父类的内部数据。尽量把父类的所有field都设置成private访问类型,不要让子类型直接访问父类的field 2.不要让子类随意可以访问,修改父类的方法。如果不想被子类访问,就将父类原创 2014-02-15 17:01:25 · 486 阅读 · 0 评论 -
java学习笔记<十七>Collections
java提供了一个操作Set,List和Map等集合的工具类:Collections,该工具类里提供了大量方法对集合元素进行排序,查询和修改等操作 排序操作 import java.util.ArrayList; import java.util.Collections; public class SortTest { public static void main(String原创 2014-02-17 22:37:04 · 611 阅读 · 0 评论