第六届全国ITAT应用技术大赛考点详解

上传人:岁月****20 文档编号:49979497 上传时间:2022-01-19 格式:DOCX 页数:14 大小:170.22KB
收藏 版权申诉 举报 下载
第六届全国ITAT应用技术大赛考点详解_第1页
第1页 / 共14页
第六届全国ITAT应用技术大赛考点详解_第2页
第2页 / 共14页
第六届全国ITAT应用技术大赛考点详解_第3页
第3页 / 共14页
资源描述:

《第六届全国ITAT应用技术大赛考点详解》由会员分享,可在线阅读,更多相关《第六届全国ITAT应用技术大赛考点详解(14页珍藏版)》请在装配图网上搜索。

1、第六届全国应用技术大赛(Java)一知识点总结Java语言的特点:1平分无关性(可移植性):跨平台是指用Java写的应用程序不用修改就能够够在不同的软件平台上运行.平价无关有两种:源代码级(C/C+)和目标代码级(Java);它通过JVM实现了“一次编译,多处运行”。2面向对象:它除数值,布尔和字符三种大体类型之外,其他类型都是对象,完全摒弃了非而向对象的特点。3 .散布性:散布性包括数据散布和操作散布。数据散布是指:数据能够分散在网络的不同主机上;操作散布是指:把一个计算散布在不同主机上处置。4 .健壮性:Java不支持指针,自动垃圾搜集机制,异样处置机制。5 .平安性:当Java字节码进入

2、说明器时,第一必需通过字刊码校验器的检查。6 .简单性:省略了运算符重载,多重继承等模糊的概念。7 .高性能8多线程。9动态性2. Java程序的开发进程:Java运行系统执行Java应用程序的进程包括三个步骤:代码的装入,代码的验证,代码的执行。3. Application和Applet的区别:独立应用程序通过编译后由虚拟机直接说明执行;关于Applet,需要Java编译器生成.class的代码,然后在嵌入到某个HTML文件中,由某个阅读器说明执行。4. Java的表示符和关键字:Java规定,标识符必需遵循由字母,下划线(“一”),或美元符下划线(“一”),或美元符$)或数组组成的符CT)

3、开头,后而跟0个或多个字母,(java 中 Unicode 编码)简单类型数据类型6Javacoc工具:利用javadoc自动生成一个类的HTML文档。在命令行输入代码格式:JavadocoptionsSourceCodeFile.java其中options有以下选项:-private显示所有类和成员;-version包括version标签(默许忽略)-author包括author标签(默许忽略)7运算符与表达式:取反:取反运算可不能改变数据本身的值,只是计算的结果为源数据的按位反规律:(-a)=a(a)=-(a+l);例如:publicclassTestpublicstaticvoidmai

4、n(Stringargs)inti=OxFFFFFFFl;intj=i;System.out.println(Mi=u+i);=-15;System.outprintln(,j=M+j);.=14;)左移:将操作数中的所有位左移指定的位数,右边空出的位补0:带符号右移:将操作数中的所有位左移指定的位数,右边空出的位填补符号位;例如:假设a=-25那么用补码表示为:11100111(负数在运算机中以补码表示:求一个负数的补码:直接将其绝对值按位取反加1),现在表达式“a=a3的值为:11111100移位前右移3位(抛弃)最终结果11111100无符号右移:将操作数中的所有位左移指定的位数,右边空

5、出的位填补0:8语句和数组:数组的声明:typearrayNanie;typearrayName数组的创建:typearrayName=newtypel0数组的初始化:typearrayName=,9类与对象:对象的4个大体特点:抽象封装继承多态性10 staticstatic:可修饰变量(属性):可修饰方式;可修饰代码块。一样情形下,主方式是静态方式,因此可挪用静态方式,主方式为静态方式是因为它是整个软件系统的入口,而进入入口时系统中没有任何对象,只能利用类挪用。在外部挪用静态方式时,能够利用“类名方式名”的方式,也能够利用“对象名.方式名”的方式。而实例方式只有后面这种方式。也确实是说,挪

6、用静态方式无需创建实例。静态方式在访问本类的成员时,只许诺访问静态成员(即静态成员变量和静态成员方式),而不许诺访问实例成员变量和实例方式;实例方式那么无此限制。11 this和super:classTT(publicTT()System.out.printWhatapleasure!”);)publicTT(Strings)this();System.out.println(nIamH+s);)classlestextendsTT(publicstaticvoidmain(Stringargs)(Testt=newTest(MTomH);)publicTest(Strings)super(s

7、);System.out.println(NHowdoyoudo?”);)publicTest()this(IamTorn*);)Wha.tapleasure|IaniTamHowdoyoudo?请按任意键继续.输出为:Mthis”表示当前对象的一个引用,利用this可利用当前对象的方式或域。当一个类中的一个构造方式需要挪用另一个构造方式时,能够利用关键字this,同时那个挪用语句应该是该构造方式的第一天可执行语句。this表示本类的其他构造方式:student。;student(stringn)this。;/表示挪用student()专门注意:用this挪用其他构造方式时,this必需为第一

8、条语句,然后才是其他语句。若是没有特殊情形,属性必然私有,方式该公布的公布。若是不指明谁挪用方式,那么默以为this。区分实例变量和局部变量时必然要写thiSo:Super是表示父类对象的关键字,super表示父类对象的方式或域。当一个类中的构造方式需要挪用父类的一个构造方式时,能够利用关键字super,同时那个挪用语句应该是该构造方式的第一天可执行语句。12 Anal JAVA利用final概念常量(注意在JAVA命名标准中常量需要全数字母都大写):finalintAGE=10: *若是一个方式前有修饰词private或static,那么系统会自动在前而加上finalo即private和st

9、atic方式默许均为final方式。 Final和abstract永久可不能同时显现。13访问权限限定词private:本类访问;default:表示默许,不仅本类访问,而且是同包可见。Protected:同包可见+不同包的子类可见Public:表示所有的地址都可见类的访问操纵符只有一个:public(abstractJinal为非访问操纵符):域的访问操纵符有publicprivateprotected,默许(包访问权限)(staticfinal为非访问操纵符)方式的访问操纵符publicprivateprotected,默许(包访问权限)(staticfinalabstract,final

10、为非访问操纵符);14包(package):包是类和接口的集合,包的作用是把多个同一个类型的类组织在一路,使得程序功能清楚,结构分明。包的一个重要的作用是可用于实现不同程序间类的重用。同一个包中的类在默许情形下能够相互访问,若是某个要利用的类不在一个目录中,那么要用装载语句import将那个类从某个包中引入进来。是用某个包中已概念的用户类或系统类,第一要从包中引入那个类。15内部类:分为3种:嵌入类(nested),内部成员类(inner)和本地类。当内部类的前面用static修饰时,它确实是一个嵌入类。它和外部的其他成员属性和方式处在同一层次上。 :在嵌入类的类体中,能够概念任何类型的成员属

11、性和方式,这一点与顶层类完全相同,它本身能够是final和abstract类型,也能够被其他类所继承。 :嵌入类不能和包括它的外部类同名,也不能和其他的成员同名。内部成员类:若是内部类前面不用static修饰,那么他是一个内部成员类。他的地位与类的实例成员相当,因此也被称为实例成员类。与嵌入类最大的不同在于,他的类体中不许诺存在静态成员,包括静态成员方式和静态成员变量,但能够概念静态的常量。本地类: :概念在方式中的类。不管方式本身是静态方式仍是实例方式,本地类都不能用static来修饰。能够概念静态的常量。(本地类的地位相当于一个局部变量)。匿名内部类:anonymous:是一种特殊的局部内

12、部类,它通过匿名类实现接口,并只创建一次。匿名类部类很容易概念,可是它在被嵌入类的内部不能重用,而却匿名类没有构造方式。(在内部类访问外部类的实例变量:外部类名.1his.属性)16 异样类:Throwable17继承18抽象类和接口:若是一个类中有一个抽象方式,那么那个类必然为一个抽象类。反之,若是一个类为抽象类,那么其中可能有非抽象的方式。因此子类必需覆盖父类的抽象方式。方式才能够起作用。接口都是abstract因此无需用abstract来修饰,接口中的成员变量都是常量。接口中的成员变量具有:publicstaticfinal所联合具有的属性。接口中的成员方式都是抽象方式,具有public

13、abstract所联合具有的属性接口没有构造方式。接口是一种特殊的抽象类。与类相似,一个文件只能有一个public接口,且与文件名相同。在一个文件中不可同时概念一个public接口和一个public类。接口和接口之间能够概念继承关系,而且接口之间许诺实现多继承。publicinterfaceCextendsA,BA、abstract不能与final并列修饰同一个类B、abstract类中不能够有private的成员C、abstract方式必需在abstract类中19多态性:编译时多态:编译时动态重载:运行时多态:指一个对象能够具有多个类型Animala=newAnimal0;dogd=(do

14、g)a;现在编译无误,但运行那么会报错。20Class类:/*获取Class实例的三种方式:1)利用对象挪用getClass。方式获取该对象的Class实例。2)利用Class类的静态方式forName(),用类的名字获取一个Class实例。3)运用.class的方式来获取Class实例,关于大体数据类型的封装类,还能够采纳.TYPE来获取相对应的大体数据类型的Class实例。*/classPointinix,y;)classClassTestpublicstaticvoidmain(StringJargs)Pointpt=newPoint();Classcl=pt.getClass();Sy

15、stem.out.println(cl.getNameO);Classc2=Point.class;System.out.println(c2.getNaine();Classc3=int.class;System.out.println(c3.getNanie();Classc4=Integer.TYPE;System.out.println(c4.getNaine();Classc5=Integer.class;Systeni.out.println(c5.getNaine();21jar文件:如何把编译成功的java源程序做成应用软件1 .将编译好的java程序打包(注意要把此程序用到的

16、所有文件都放在一个包里(以test包为例),像图片,程序的所有类文件等等)。2 .生成一个.mf文件 新建一记事本,打开在里面编辑如下内容:Manifest-Version:1.0Main-Class:A(类名)Created-By:1.6 保留的时候保留为.mf格式的文件(以下以Mymoon.mf为例) 然后将此文件放在test包中。3 .将test包中的所有文件紧缩成.jar格式的文件(以主类名作为此紧缩包的文件名A)在dos卜输入如下命令:D:/test/jarcfm(源程序的主类名).jarMymoom.mf(程序包里面的类名).class4 .生成.bat文件新建一个记事本,在此记事

17、本中做如下编辑:javaw-jar(jar文件名).jar然后将此文件名改成(Jar文件名).bat5 .将.bat文件转换成.exe文件 在多特软件站中下载一个BAT转EXE简体中文绿色版.exe软件。 现在依照软件的用途做相应的操作,能够更改.exe文件的版本信息,.exe文件的图拄绚绚6 .如何将一般的图片转化成.ic。格式的在多特软件站中下载大魔头ICO图标转换器.exe依照要求操作,即可转化。7 .现在一个小小的应用软件即生成了,创建快捷方式到桌而,双击.exe图标,即可打开此软件。(注意:上述的制作进程,最后的结果显示必需要做装有java虚拟机上方可运行,读者专门要注意这一点)22

18、明白得JavaApI的概念:API应用程序接口,是java平台定义的一套基本类和接口的程序库。JIT即时编译,JIT是java字节码编译器的名称,它能够把java的.class文件编译成机械码文件。23 了解Object类:24 大体类型的封装类:ByteShortIntegerLongDoubleFloatCharacterBoolean抽象类Number是所有数字型类型(ByteShortIntegerLongDoubleFloat)包装类的父类,Number类有6个具体的子类:doublefloatbyteshoutintlong25 StringandStringBuffer类:Str

19、ing类与StringBuffer类的要紧区别:String类的实例对象是不可变的,因为Java的内部机制规定他们不能被改变。StringBuffer类的实例却没有那个限制。 StringBuffer对象的长度是他所包括的字符数:而他的容量是指在不被扩展的情形下,它所容纳的字符数。 例程:publicclassTest publicstaticvoidstringReplace(Stringtext) text=text.replace(”j,“p”); System.out.println(text); publicstaticvoidbufferReplace(StringBufferte

20、xt) text=text.append(HcM); publicstaticvoidmain(Stringargs) StringtextString=newString(HjavaH); StringBuffertextBuffer=newStringBuffer(njavaM); stringReplace(textString); bufferReplace(textBuffer); System.out.println(textString+MN+textBuffer);)26 Hashtable与Properties类:Hashtable也是一种高级数据结构,用以快速检索数据。Ha

21、shtable不仅能够像Vector一样动态存储一系列对象,而且对存储的每一个对象(称为值)都要安排另一个对象(称为关键字)与之相关联。例如,咱们能够在Hashtable中存储假设干个国家的中文和英文名,而且能够通过英文名称检索对应的中文名称,在这种情形中中文确实是值,英文确实是关键字。向Hashtable对象中存储数据,利用的是Hashtable.put(Objectkey,Objectvalue)方式,从Hashtable中检索数据,利用Hashtable.get(Objectkey)方式。值和关键字都能够是任何类型的非空对象。下面代码生成一个存储数字的Hashtable,用英文数字作为关

22、键字。Hashtablenumbers=newHashtabel();numbers.putCone,newlnteger(1);numbers.put(two,newlnteger(2);numbers.putCthree,newlnteger(3);要想检索其中“two关键字对应的数据,看下面的代码就能够明白。Integern=(lnteger)numbers.get(two);if(n!=null)System.out,println(two=+n);要想成功地从Hashtable中检索数据,用作关键字的对象必需正确覆盖Object.hashCode方式和Object.equals方式。

23、覆盖Object.equals方式道理不难想象,检索数据时要比较用来检索的关键字是不是与存储在Hashtable中的某个关键字相等,若是两个关键字对象不能正确判定是不是相等,检索是不可能正确的。ObjecthashCode方式回返一个叫散列码的值,那个值是由对象的地址以某种方式转换来的。内容相同的两个对象,既然是两个对象地址就不可能一样,因此Object.hashCode返回的值也不一样。要想两个内容相同的对象的hashCode方式返回一样的散列码,子类必需覆盖Object.hashCode方式,用于关键字的类,若是它的两个对象用equals方式比较相等的,那么这两个对象的hashcode方式

24、返回值也要一样,因此咱们也要覆盖hashCode方式。那个地址能够提一下String类,因为String类已依照关键字类的要求覆盖了这两个方式,若是两个Siring对象内容不相等,它们的hashCode的返回值也可不能相等。若是两个String对象的内容相等,它们的hashCode的返回值也相等注意:StringBuffer类没有依照关键字类的要求覆盖hashCode方式,即便两个StringBuffer类对象的内容相等,但这两个对象的hashCode方式的返回值却不相等。importjava.util.*;classMyKeypublicStringname;publicintage;pub

25、licMyKey(Stringname,intage)this.name=name;this.age=age;)publicStringtoString()returnnewString(name+”+age);)rpublicbooleanequals(Objectobj)if(name.equals(obj.name)&age=obj.age)returntrue;elsereturnfalse;)*/publicinthashCode()returnname.hashCode()+age;)publicclassTestHashtablepublicstaticvoidmain(Stri

26、ngargs)Hashtablenumbers=newHashtable();numbers.put(newMyKey(nA1H,18),newlnteger(1);numbers.put(newMyKey(”A2,13),newlnteger(2);numbers.put(newMyKey(nA3H,15),newlnteger(3);Enumeratione=numbers.keys();while(e.hasMoreElements()MyKeykey=(MyKey)e.nextElement();System.out.print(key.toString()+System.out.pr

27、intln(numbers.get(key).toString();)27 System与Runtime类:System类:有三个常有的静态成员:outinen散布表示标准的输出流,输入流,错误输出流。经常使用的方式:currentTimeMills。记录程序执行的时刻,以亳秒获取运算机上的时刻。它的返回值是一个1。咤型,记录的是当前时刻与1970年1月1日0时之间的时刻差。利用exit()退出虚拟机。Runtime类:是java.lang中一个重要的类,该类封装了运行时环境。一样不实例化对象,可是能够通过挪用Runtime类的静态方式getRuntime而取得对当前Runtime对象的引用。

28、exec()方式:能够在多任务操作系统中让java去执行其它进程。totalMemoryO方式和freeMeniory()能够明白java虚拟机内存堆的大小和剩余情形。28 Date类和Calendar类::获适当前时刻,也有设置时刻和其他的辅助功能。已经废除,全数被移植到Calendar类中。利用GregorianCalendar输出日历。29 Biginteger类:一样来讲,Biginteger用的不是很多,BigDecimal用的略微多一点,就比如说JDBC中,若是一个字段的数据库类型是Number,那么getObject().getClass()的结果是java.math.BigDe

29、cimalBiginteger相较Integer的确能够用big来形容。它是用于科学计算,Integer只能容纳一个int,因此最大值也确实是2的31次访减去1,十进制为2147483647,若是需要计算更大的数,那么31位显然是不够用了,Biginteger能够容纳的位数那可就大了,我简单试了一下,上千位没有任何问题。除容量大之外,Biginteger还封装了一些常见的操作,比如+-*/的大体操作,还有绝对值,相反数,最大公约数,是不是是质数等等的运算。BigDecimal的实现利用到了Biginteger,所不同的是BigDecimal加入了小数位的概念,比如BigDecimald=new

30、BigDecimal(newBiglnteger(ib),5);5表示的是5个小数位。BigDecimal可以用来做超大的浮点数的运算,比如+-*/的运算,其中除法运算是最复杂的,因为商的位数还有除不断的情形下末位小数点的处置都是需要考虑的。newBigDecimal(-7.5).divide(newBigDecimaI(1)ABigDecimal.ROUND_UP);上面的那个运算中divide的第二个参数表示商的小数点位数,最后一个参数指的是近似处置的模式。一共有一下几个模式:BigDecimal.ROUND_UP最后一名若是大于0,那么向前进一名,正负数都如此。BigDecimal.RO

31、UND_DOWN最后一名不管是什么都会被舍弃。BigDecimal.ROUND_CEILING若是是正数,按ROUND_UP处置,若是是负数,依照ROUND_DOWN处置。例如因此这种近似的结果都会”实际值。BigDecimal.ROUND_FLOOR跟BigDecimal_ROUND_CEILING相反。例如7.1-7;-7.k-8o这种处置的结果=实际值。BigDecimal.ROUND_HALF_DOWN若是最后一名5,向前进一名。如7.5-7;7.6-8;-7.5-7BigDecimaI.ROUND_HALF_UP若是最后一名=5,向前进一名。反之舍弃。如7.5-8;7,4-7;-7.

32、5-8BigDecimal.ROUND_HALF_EVEN如果倒数第二位是奇数,按照BigDecimaI.ROUND_HALF_UP处置,若是是偶数,依照BigDecimal.ROUND_HALF.DOWN来处理。如7.5-8;8,5-8;7,4-7;-7.5-8、今天参考讲义写了一个关于二进制与十进制转换的程序,程序算法不难,但写完后测试发觉不论是二转十仍是十转二,关于大于21亿即超过整数范围的数不能专门好的转换。都会变成0.参考书籍发觉利用利用Biginteger能够解决那个问题。于是查找了下JDK,然后测试几回终于写成功了!利用心得如下:1,Biginteger属于java.math.B

33、iglnteger,因此在每次利用前都要import那个类。偶开始就忘记import了,于是总提示找不到提示符。2,其构造方式有很多,但此刻偶用到的有:BigInteger(Stringval)将Biginteger的十进制字符串表示形式转换为Biginteger。BigInteger(Stringval,intradix)将指定基数的Biginteger的字符串表示形式转换为Biglntegero如要将int型的2转换为Biginteger型,要写为Bigintegertwo=ncwBiglnteger(2);注意2双引号不能省略”3,Biginteger类模拟了所有的int型数学操作,如2

34、前0=+”通石加0=-”等,但注意其内容进行数学运算时不能直接利用数学运算符进行运算,必需利用其内部方式。而且其操作数也必需为Biginteger型。如:two.add(2)确实是一种错误的操作,因为2没有变成Biginteger型。4,当要把计算结果输出时应该利用.toString方式将其转换为10进制的字符串,详细说明如下:StringtoStringO返回此Biginteger的十进制字符串表示形式。输出方式:System.out.print(two.toStringO);5,另外说明三个个用到的函数。Bigintegerremainder(Bigintegerval)返回其值为(thi

35、s%val)的BiglntegeroBigintegernegate()返回其值是(-this)的BigintegerointcompareTo(BigIntegerval)将此Biginteger与指定的Biglntegcr进行比较。remainder用来求余数negate将操作数变成相反数。compare的详解如下:compareTopublicintcompareTo(BigIntegerval)将此Biginteger与指定的Biginteger进行比较。关于针对六个布尔比较运算符(,=,!=,0),其中vop是六个比较运算符之一。指定者:接Comparable中的compareTo参

36、数:val-将此Biginteger与之比较的Bigintegero返回:30Math与Random类:Math类是java中的数学工具包,和System类一样所有的方式和变量都是静态的。最经常使用的double类型的常量E(近似为:2072)和PI(近似为3.14)。Math,random。返回.0.0L0之间的一个实数。Random类:它不仅能够返回浮点类型的随机数,还能够返回整型,布尔型,字节型,也能够指定产生随机数的范围。Random类采纳的是线性同余算法产生的随机数序列,所有数学公式如下:q田=S*4+c)modm,其中Ug,d0,c0,d,d被称为种子,b=0x5DEFCE66DLc=0xBLn=0xFFFFFFFFFFFF.常有的方式有:/RandomO创建一个随机数发生器。/Random(longseed)以seed为种子创建一个随机数发生器。/Intnextlnt()

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!