ABCDtest4(){returnnewABCD(3){};}
interfaceiii{}
iiitest5(){returnnewiii(){};}
//classBCDextendsABCD{}compileerror,因为,
看上面就知道,newiii(){};实际上匿名类实现了iii接口;newABC(){};实际上是匿名类继承了ABC。
8。???
classA{privateA(){System。out。println("a!");}}
classBextendsA{}
**,没错!B实例的时候会主动调用父类A的构造,即使是private的,看来也没问题!!!
9。内部类可以有synchronized方法,那么锁是这个内部类,跟外部类没一点关系,内外分别的,在锁的问题上。
10。外部类不能通过this被访问,this这时候应该指的是内部类,享用外部类的成员就直接用,不用加任何限定词
11。如何用this呢?请看:
classOuter{inti;
classInner{
classInnerInner{
voidTest(){
Outer。this。i=1;
}
}
}
}
看见了吧,类名。this。变量名,可以引用到i,第一次看到吧,嘿嘿,孤陋寡闻。
12。注意这两种写法都可以
ClassOuter。Inneri=newOuter()。newInner();
或者,Classo=newOuter();ClassOuter。Inneri=o。newInner();
线程Thread)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
?????去看Thread的API!!!!
1。线程启动必须通过start函数。
2。run函数不许也只能是public的。
3。线程有优先级从1到10,通过Thread。setPriority(int);来改变,不能超过10,否则会出现运行异常
4。线程优先级默认是5,即NORM_PRIORITY。????????NORM_PRIORITY是Thread的静态变量吗?
5。????Thread。yeild();是静态方法,所以,使用格式是Thread。yield();她强迫当前的进程放弃CUP。
6。sleep(1000),是说线程睡觉1秒,然后,进入Ready状态,注意,不是运行状态,它还要等OS来调度来获得CUP。
java。lang。*;
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1。数组的科隆:intia[][]={{1,2},null};intib[][]=(int[][])ia。clone();
2。什么是NaN?????然后看ceil(NaN),floor(NaN),。。。
3。Math。floor(-1。1f);//-2。0
Math。ceil(-1。1f);//-1。0
Math。round(-1。6d)//-2
4。0=5。Math,Interger,Boolean。。。等类型包装类都是final的,不可继承
6。intround(float);longround(double);唉,round永远返回不了小数点
7。staticdoubleceil(double)
8。staticdoublefloor(double)注意,ceil,floor的只有这个double版本,什么都转成double!
9。staticdoublesin(double弧度);还有cos,tan
10。newString;?可以是byte[];char[];String;StringBuffer
11。String的一些函数:intlength();charcharAt(int);StringtoUpperCase();StringtoLowerCase();
12。String("Abc")。equals(String("abc"))不相等的,不然就不会有booleanequalsIgnoreCase(String)函数
13。"012345678"是一个串的顺序号码,indexOf(´1´),indexOf("1")都返回1,subString(1,5)是2345,嘿嘿:是"[)"的感觉
14,trim()连tab都退毛,"\t\njava",trim()一下就只剩下"java"了
15。关于对象的科隆,去喳喳API??????????????????????
16。"abcd"。trim(),"abcd"+newString("ef")都是合理的写法
17。StringBuffer的3个构造器:()初始化容量为16,(int初始化容量),(String),初始化容量为串长加上16
18。StringBuffer的一些函数:StringtoString();append();reverse();insert();delete(intstart,intend);deleteCharAt(int);setLength(intnewLength);
19。Strings="";StringBuffersb=newStringBuffer();if(s==sb){}编译错!因为,s,sb类型不一样,不能比较
集合:
1。各接口和类的关系,只有最后一个是类
Collection:List:vector,ArrayList,LinkedList
Map:SortedMap:TreeMap
Collection:Set:SortedSet:TreeSet
Map:HashTable
Collection:Set:HashSet
基础Base)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1。javaapplication的main可以不是public的。但必须是static的
2。一个文件只能有一个public类,而且还得跟文件名一样,包括大小写