此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/