1 / 24
文档名称:

java程序设计笔试题库及答案.doc

格式:doc   大小:162KB   页数:24
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

java程序设计笔试题库及答案.doc

上传人:pwwvytot8 2017/5/24 文件大小:162 KB

下载得到文件列表

java程序设计笔试题库及答案.doc

文档介绍

文档介绍:JAVA 基础题库 1、作用域 p ublic ,priv ate,p rotec ted, 以及不写时的区别注: 不写时关键字默认为 f riend ly 作用域当前类同一 pa ckage 子孙类其他 pac kage publi c√√√√ prote cted √√√× fr iendl y√√×× priva te√××× 2、 A nonym ous I nner Class (匿名内部类)是否可以 ext ends( 继承)其它类,是否可以 impl ement s(实现) inter face( 接口)答:匿名的内部类是没有名字的内部类。不能 exten ds( 继承)其它类,但一个内部类可以作为一个接口,由另一个内部类实现 3、&和&& 的区别。答: &和&& 都可以用作逻辑与的运算符,表示逻辑与( and),当运算符两边的表达式的结果都为 true时,整个运算结果才为 tru e,否则, 只要有一方为 fals e,则结果为 fals e。&& 还具有短路的功能,即如果第一个表达式为 f alse ,则不再计算第二个表达式, 例如, 对于 if( str!=nul l && !str. equal s( “”))表达式, 当 str为 null 时,后面的表达式不会执行,所以不会出现 Nu llPoi nterE xcept ion 如果将&& 改为&,则会抛出 Null Point erExc eptio n异常。 I f(x== 33& ++y>0 )y会增长, If( x==33 && + +y>0) 不会增长&还可以用作位运算符,当&操作符两边的表达式不是 boole an类型时,&表示按位与操作, 我们通常使用0x0f 来与一个整数进行&运算,来获取该整数的最低4个bi t位,例如, 0x31 &0x0f的结果为 0x01 。 4、 Stat ic Ne sted Class 和 In ner C lass 的不同 Ne sted Class 一般是 C ++ 的说法, Inne r Cla ss一般是 JAVA 的说法。 Neste d cla ss分为静态 Stat icne sted class 的和非静态的 in ner c lass, 静态的 S tatic nest ed cl ass 是不可以直接调用它的外部类 encl osing clas s的,但是可以通过外部类的引用来调用,就像你在一个类中写了 m ain 方法一样。非静态类 in ner c lass 可以自由的引用外部类的属性和方法,但是它与一个实例绑定在了以其,不可以定义静态的属性、方法。 In ner C lass (内部类)定义在类中的类。 Ne sted Class (嵌套类) 是静态( s tatic )内部类。 ,并不需要其外围类的对象。 。 Ano nymou s Inn er Cl ass (匿名内部类)匿名的内部类是没有名字的内部类。匿名的内部类不能 exte nds (继承)其它类,但一个内部类可以作为一个接口,由另一个内部类实现。嵌套类可以作为接口的内部类。正常情况下,你不能在接口内部放置任何代码,但嵌套类可以作为接口的一部分,因为它是 stat ic的。只是将嵌套类置于接口的命名空间内,这并不违反接口的规则。静态方法是不能继承的, 因为它是静态的,所谓静态当然是时间和空间的静止喽……所以任何人都别想改变他。但是它不介意有人和它叫一样的名字,所以子类是可以 co ver 的, 但是其实这样会出来两个函数,一个父类的一个子类的, 各管各的。然后 fi nal 是j ava 里面定义的,不能被重载的函数。 j ava 里面的函数如果没有特别标识,只要在子类中定义了一个同名的函数,那么父类的函数就被重载掉了。如果 new 一个子类的对象给父类再调用这个函数,就是调用子类的了。只有 new 的是父类的调的才是父类的。 j ava 里面没有 vir tual 的说法,因为不是 fin al或 st atic 就是 virt ual 的。 abst ract 是虚函数,自然不可能是 final 的,同时如上所说, s tatic 是不能被重载只能被覆盖的,所以也不可以是 abstr act 的内部类被继承,由于内部类有一个指向外围类对象的秘密引用,所以在继承内部类的时候, 该秘密引用必须被初始化。解决方法是 enc losin gClas sRefe rence .supe r(); 语法,看一下代码: class Oute r...{ cla ss In ner ...{ }} clas s Ano Class exte nds O uter.