此java学习笔记谨为个人学习用处,主要内容为布局组件布局管理器、类和对象、抽象类和接口、继承、正则表达式、数组等内容其中难免有不少错误,敬请纠正。

布局组件 布局管理器

FlowLayout是最简单的布局管理器,将组件从左到右,从上到下顺序布局

GridLayout将组件按行列分格来布局,要指定行列数目

BorderLayout框架的上下两部分只在水平方向拉伸,而在垂直方向不变。

类和对象笔记

1.因为主方法是静态的,所以要想在主方法中直接调用其他,则其他方法也必须是静态的。

2.mainline中的(String[] args)行参实际上为数组。args[0]~args[n],分别代表第一个到第n个参数,可以使用args.length获取参数的个数。

3.包装类

调用BigInteger时,BigInteger instance=BigInteger(“2″);其中的省略号不能省略。

4.引用对象

有两种方法,使用运算符“==”或equals()方法,两者有着本质的不同.

5.类的可见性

private只有在本类中可见

protected只有在本包中可见

public在本包和其他包里都可见

6.基本数据类型的对象处理

java可以把基本数据类型作为对象来处理,在java中一切皆为对象,int型有Integer对象,boolean型有Boolean对象等。

抽象类和接口笔记

将父类定义为抽象类,使用父类进行继承和多态处理。

public abstract class Test{

abstract void testAbstract();//定义抽象方法

}

抽象类除了被继承外没有任何意义。

抽象类不可以实例化对象。

只要类中有一个抽象方法就被定义为抽象类。

接口是抽象类的延伸,是纯粹的抽象类,接口中的所有方法都没有方法体。

public interface drawTest{

void draw();//接口内的方法省略abstract关键字

}

接口中的方法必须被定义为public或abstract。

一个类实现一个接口使用implements关键字。
继承笔记

重构时权限只能由低到高,如父类中是protected在重构中只能是pubic

实例化子类对象时首先实例化父类对象,然后再实例化子类对象。

java.lang.Object类是java中的最高层类,java中任何一个类都是它的子类。Object类主要包括clone(),finalize(),euqals(),toString()等方法。final类型不能被重写。

对象类型转换包括向上转型和向下转型。将父类对象强制转换为某个子类对象的方式叫做显示类型转换,用于向下类型转换中。在向下类型转换中要先判断子类对象是否是父类对象的一个实例,由instanceof操作符来完成。

定义不定长参数的方法: public static int add(int …a)相当于(int[]a)

正则表达式

A?  A出现0或一次

A*  A出现0或多次

A+  A出现一次或多次

A{2} A正好出现2次

A{2,} A至少出现2次

A{2,4}A出现2到4次

[abc]2:a2或b2或c2

[^abc]:除了abc

[a-r]:代表a到r的任意一个

[a-zA-Z]:可表示任意一个英文字母

[a-c[e-g]]:a到c或e到g任意一个字母

[a-o&&[def]]:a到o交def
数组

初始化:

int arr[]=new int[]={1,22};

排序:

Arrays.sorts(arr);

填充:

Arrays.fill(arr); Arrays.fill(arr,from,end,number);

复制:

Arrays.copyOf(arr,5); 5是复制之后的新数组的长度。

Arrays.copyOfRange(arr,from,end);

查询:

Arrays.binarySearch(arr,from,end,index)index是查查询变量,返回值是index所在的索引值(若不存在,则返回第一个大于index的元素索引)(二分查找)

Arrays.binarySearch(arr,key); arr所查找的数组,key关键字
文:root@linux 转载注明出处:http://mtoou.info/java-biji-1/