整理后java开发全套达内学习笔记(含练习)

abstract (关键字)抽象['æbstrækt] access vt.访问,存取['ækses]'(n.入口,使用权) algorithm n.算法['ælgәriðm] Annotation [java]代码注释[ænәu'teiʃәn] anonymous adj.匿名的[ә'nɒnimәs]'(反义:directly adv.直接地,立即[di'rektli, dai'rektli]) apply v.应用,适用[ә'plai] application n.应用,应用程序[,æpli'keiʃәn]' (application crash程序崩溃) arbitrary a.任意的['ɑ:bitrәri] argument n.参数;争论,论据['ɑ:gjumәnt]'(缩写args) assert (关键字)断言[ә'sә:t] ' (java 1.4之后成为关键字) associate n.关联(同伴,伙伴) [ә'sәuʃieit] attribute n.属性(品质,特征) [ә'tribju:t] boolean (关键字)逻辑的,布尔型call n.v.调用;呼叫; [kɒ:l] circumstance n.事件(环境,状况) ['sә:kәmstәns] crash n.崩溃,破碎[kræʃ] cohesion内聚,黏聚,结合[kәu'hi:ʒәn] (a class is designed with a single, well-focoused purpose.应该不止这点) command n.命令,指令[kә'mɑ:nd](指挥,控制) (command-line命令行) Comments [java]文本注释['kɒments] compile [java] v.编译[kәm'pail]' Compilation n.编辑[,kɒmpi'leiʃәn] const (保留字) constant n.常量,常数,恒量['kɒnstәnt] continue (关键字) coupling耦合,联结['kʌpliŋ] making sure that classes know about other classes only through their APIs. declare [java]声明[di'klєә] default (关键字)默认值;缺省值[di'fɒ:lt] delimiter定义符;定界符Encapsulation[java]封装(hiding implementation details) Exception [java]例外;异常[ik'sepʃәn] entry n.登录项,输入项,条目['entri] enum (关键字) execute vt.执行['eksikju:t] exhibit v.显示,陈列[ig'zibit] exist存在,发生[ig'zist] '(SQL关键字exists) extends (关键字)继承、扩展[ik'stend] false (关键字) finally (关键字) fragments段落;代码块['frægmәnt] FrameWork [java]结构,框架['freimwә:k] Generic [java]泛型[dʒi'nerik] goto (保留字)跳转heap n.堆[hi:p] implements (关键字)实现['implimәnt] import (关键字)引入(进口,输入) Info n.信息(information [,infә'meiʃәn] ) Inheritance [java]继承[in'heritәns] (遗传,遗产) initialize预置初始化[i'niʃәlaiz] instanceof (关键字)运算符,用于引用变量,以检查这个对象是否是某种类型。返回boolean值。 interface (关键字)接口['intәfeis] invoke vt.调用[in'vәuk]' ( invocation [,invәu'keiʃәn]) Iterator [java]迭代器,迭代程序legal合法的['li:gәl] log n.日志,记录[lɒg] native (关键字) ?? ['neitiv] nested [java]嵌套的['nestid] '如:内部类(nested classes) Object [java]对象['ɒbdʒekt] Overload [java]方法的重载(不同参数列表的同名方法) [,әuvә'lәud] Override [java]方法的覆盖(覆盖父类的方法) [,әuvә'raid] polymiorphism[java]多态(polymorphism多形性[,pɒli'mɒ:fizm]) allowing a single object to be seen as having many types. principle n.原则,原理,主义['prinsipl] priority n.优先级[prai'ɒriti] process n.程序,进程['prɒses] protected (关键字)受保护的,私有的[prә'tektid] provide v.规定(供应,准备,预防)[prә'vaid] refer to v.引用[ri'fә:][tu:] reference n.参考(引用,涉及)['refәrәns]' -->reference variable参量,参考变量,引用变量Reflection [java]反射[ri'flekʃәn] script n.手写体,小型程序[skript] serialized vt.序列化,串行化['siәriәlaiz]'(serializable adj.)(deserialize反序列化,反串行化) Socket [java]网络套接字['sɒkit] stack n.堆栈[stæk] (对应heap堆) statement程序语句;语句['steitmәnt]' n.陈述,指令subclass n.子类['sʌbklɑ:s]' (supertype父类) switch (关键字)选择语句。 n.开关,道岔[switʃ] synchronized (关键字)同步(锁) ['siŋkrәnaiz] Thread [java]线程[θred] throw (关键字) throws (关键字) [θrәu]抛出(异常) transient (关键字)瞬变;临时的['trænziәnt]'(可序列化) valid正确的,有效的['vælid] variable n.变量a.可变的['vєәriәbl] volatile (关键字)不稳定的['vɒlәtail] while (关键字)循环语句。当...的时候[hwail] ORACLE_SID=oral10g\ --变局部变量export ORACLE_SID --变全局变量unset ORACLE_SID --卸载环境变量ORACLE_HOME=... --安装路径;直接用一句语句也可以,如下export ORACLE_HOME=/oracledata/.../bin: BufferedReader建构时接受java.io.Reader物件可使用java.io.InputStreamReader例: import java.io.InputStreamReader; import java.io.BufferedReader; class n{ public static void main(String[] args){ System.out.println("请输入一列文字,包括空格:"); BufferedReader s = new BufferedReader(new InputStreamReader(System.in)); String next; try{next = s.readLine();//此语句会抛异常,需处理System.out.println("您输入了文字:" + next); }catch(Exception e){} }}数值保存方式:正数=二进制负数=补码补码=反码+1正数=负数的补码(反码+1)反码=非(二进制数)八进制数,零开头011(八进制)=9(十进制)十六进制数,零x开头0x55(十六进制)=5*16+5(十进制)类型:数据都必须有类型boolean (8bit,不定的)只有true和false两个值char 16bit, 0~2^16-1 (2^16=6万6) byte 8bit, -2^7~2^7-1 (2^7=128;注意:两个byte数相加,变int型) short 16bit, -2^15~2^15-1 (2^15=32768) int 32bit, -2^31~2^31-1 (2147483648,20亿,10位有效数字) long 64bit, -2^63~2^63-1 (900亿亿,20位有效数字) float 32bit, 9位有效数字,含小数(四舍五入)(小数点算一位,正负号不算) double 64bit, 18位有效数字注:float和double的小数部分不可能精确,只能近似。比较小数时,用double i=0.01; if ( i - 0.01 < 1E-6) ...不能直接if (i==0.01)...默认,整数是int类型,小数是double类型long类型值,需跟L或l在数据后;float类型要跟f或F;或强制类型转换科学计数法:12.5E3类型转换默认序列: byte > short > int > long > float > double char 」注意:默认类型转换(自动类型提升)会丢失精度,但只有三种情况: int>float; long>double.看一下他们的有效位就明白。二进制是无法精确的表示0.1的。进行高精度运算可以用java.math包中BigDecimal类中的方法。自动类型提升又称作隐式类型转换。强制类型转换:int ti; (byte) ti ;强制转换,丢弃高位宣告变量名称的同时,加上“final”关键词来限定,这个变量一但指定了值,就不可以再改变它的值如:final int n1= 10; n1=20;这就会报错输出命令: System.out.println()会自动换行的打印System.out.print()直接打印,不会自动换行System.out.printf()可插入带%的输入类型,前两种只可以插入转义符,不能插入%的数据或字符串在printf里面,输出有5个部分%[argument_index$][flags][width][.precision]conversion以“%”开头,[第几个数值$][flags][宽度][.精确度][格式] printf()的引入是为了照顾c语言程序员的感情需要格式化输出Formatter;格式化输入Scanner;正则表达式输出格式控制:转义符: \ddd 1到3位8进制数指定Unicode字符输出(ddd) \uxxxx 1到4位16进制数指定Unicode字符输出(xxxx) \\ \ \' ' \" " \b退格(光标向左走一格) \f走纸转页,换页\n换行\r光标回到行首,不换行\t跳格%% % %d输出10进位整数,只能输出Byte、Short、 Integer、Long、或BigInteger类型。(输出其他类型会抛异常) %f以10进位输出浮点数,提供的数必须是Float、Double或BigDecimal (输出Integer类型也抛异常) %e,%E以10进位输出浮点数,并使用科学记号,提供的数必须是Float、 Double或BigDecimal %a,%A用科学记号输出浮点数,以16进位输出整数部份,以10进位输出指数部份,数据类型要求同上。 %o (字母o)以8进位整数方式输出,限数据类型:Byte,Short,Integer,Long或BigInteger %x,%X将浮点数以16进位方式输出,数据类型要求同上%s,%S将字符串格式化输出(可输出任何类型) %c,%C以字符方式输出,提供的数必须是Byte、Short、Character或Integer %b,%B输出"true"或"false"(%B输出"TRUE"或"FALSE");另外,非空值输出true,空值输出false %t,%T输出日期/时间的前置,详请看在线API文件/*****找出各字符的Unicode值****/ class Test{ public static void main(String[] args) { String s= ""+0+'a'; //0=48,9=57 //A=65,Z=90;a=97,z=122;空格=32 int i = s.codePointAt(0); int j = s.codePointAt(1); //利用这codePointAt(int index)方法System.out.printf("%d %d",i,j); }} /****/字符串的拼接:字符串+数值=字符串数值+字符串=字符串如:str+10+20 ==str1020而10+20+str ==30str "+"和"+="都被重载了,具有合并字符串的能力,相当于String类里的concat();运算:算术运算:加( +)减(-)乘( * )除( / )取余( % ) %取余运算: 2%3=2 100%3=1赋值运算符: = += -= *= /= %= (先运行完右边的,再跟左边的进行赋值运算;如int i=10;i-=3*5;结果-5) =比较、条件运算:大于>不小于>=小于 >> >>右移:全部向右移动,移到右段的低位被舍弃,最高位则移入原来最高位的值。右移一位相当于除2取商。 >>>同上,只是最高位移入0(不带符号)。因为最高位是符号位,所以负数跟>>有区别,正数没区别。 12>>>33为12>>(332) = 12>>1 =6;因为int型只有32位,认为全移走后就没意义1
zip 文件大小:545.91KB