`
xingdian119
  • 浏览: 11494 次
  • 性别: Icon_minigender_1
  • 来自: 泰安
最近访客 更多访客>>
社区版块
存档分类
最新评论

为SCJP认证考试而努力-3

阅读更多

这一节继续来学习修饰语:static(静态的)、abstract(抽象的),在课后的小结中还会遇到final(常量)、native(本地的)。

package operation;

class MyClass {
    public static int iMyVal = 0;

    // public int iMyVal = 0;
    public static void amethod() {
        System.out.println("MyClass");
    }
}

/**
 * @author 木炭 修饰符static
 */
public class Stat extends MyClass {
    int i;

    // public void amethod(){}//编译错误,一个非static(普通的)方法不能在子类中重写为static 方法
    public static void amethod() {
        System.out.println("amethod in StaOver");
    }

    /**
     * @param args
     */
    public static void main(String[] args) {
        // i = i + 2;//编译期错误,不能在一个static 方法内部访问一个非static 变量。
        MyClass m1 = new MyClass();
        m1.iMyVal = 1;// The static field MyClass.iMyVal should be accessed in a
        // static way
        MyClass m2 = new MyClass();
        m2.iMyVal = 2;
        MyClass m3 = new MyClass();
        m3.iMyVal = 99;
        // 三个实例中的int iMyVal 都有对应各自实例的不同值。
        System.out.println("m1.iMyVal=" + m1.iMyVal);
        // 标记一个变量为 static 表明每个类只能有一个副本存在,上面的多个副本的用法是错误的,所以最后输出:m1.iMyVal=99

        MyClass.amethod();// 一个static方法,输出:MyClass
        Stat st = new Stat();
        st.amethod();// 输出:MyClass。
        // 一个非static(普通的)方法不能在子类中重写为static 方法,但static方法可以重写static方法
    }// End of main
}
package operation;

//如果一个类有一个或多个abstract方法,或者继承了不准备运行的abstract 方法,则它必须声明为abstract
//如果不修饰abstract(接口),The compiler will complain that the Base class is not declared as abstract.
abstract class Base {
    abstract public void myfunc();

    public void another() {
        System.out.println("Another method");
    }
}

/**
 * @author 木炭 测试接口类,可以使用这个模板换成其他类型,例如finl
 */
public class Abs extends Base {
    /**
     * @param args
     */
    public static void main(String args[]) {
        Abs a = new Abs();
        a.amethod();// 运行结果:My func
    }

    // 一个abstract 类可以有非abstract 方法,但是任何扩展它的类必须实现所有的abstract 方法。
    public void myfunc() {
        System.out.println("My func");
    }

    public void amethod() {
        myfunc();
    }
}

问题 )当你试着编译运行下面的代码的时候,可能会发生什么?
public class MyMain{
public static void main(String argv){
System.out.println("Hello cruel world");}
}
1) The compiler will complain that main is a reserved word and cannot be used for a class
2) The code will compile and when run will print out "Hello cruel world"
3) The code will compile but will complain at run time that no constructor is defined
4) The code will compile but will complain at run time that main is not correctly defined

答案 4) The code will compile but will complain at run time that main is not correctly defined
main 的签名包含一个String 参数,而不是string 数组。

问题 )下面的哪个是Java 修饰符?
1) public
2) private
3) friendly
4) transient

答案 1) public 2) private 4) transient
虽然有些文本使用friendly 来表示可见性,但它不是一个Java 保留字。

问题 )你为什么可能会定义一个native 方法呢?
1) To get to access hardware that Java does not know about
2) To define a new data type such as an unsigned integer
3) To write optimised code for performance in a language such as C/C++
4) To overcome the limitation of the private scope of a method

答案 1) To get to access hardware that Java does not know about
3) To write optimised code for performance in a language such as C/C++
虽然创建“纯正的Java”代码值得鼓励,但是为了允许平台的独立性,我们不能将此作为信
仰,有很多时候,我们是需要native 代码的。

问题 )当你试着编译运行下面的代码的时候,可能会发生什么?
private class Base{}
public class Vis{
transient int iVal;
public static void main(String elephant[]){}
}
1) Compile time error: Base cannot be private
2) Compile time error indicating that an integer cannot be transient
3) Compile time error transient not a data type
4) Compile time error malformed main method

答案 1) Compile time error: Base cannot be private
一个Base 类这样的顶级类不能定义为private。
Illegal modifier for the class Base; only public, abstract & final are permitted

问题 )下面的哪一个声明是合法的?
1) public protected amethod(int i)
2) public void amethod(int i)
3) public void amethod(void) 
4) void public amethod(int i)

答案 2) public void amethod(int i)
选项3 C/C++ 写法在这里不能有,选项4 方法的返回类型必须紧跟着出现在方法名之前。

<script type="text/JavaScript"><!-- var alimama_pid= "mm_13933759_0_0"; var alimama_key= ""; var alimama_uniteid= "574499"; var alimama_col= "3"; var alimama_row = "1"; var alimama_height = "217"; var alimama_width = "572"; var alimama_type = "1110"; var alimama_mode= "32"; var alimama_titlecolor= "0000FF"; var alimama_picolor= "CC0000"; var alimama_bgcolor="FFFFFF"; var alimama_bordercolor="E6E6E6"; var alimama_defaultid="3309790548,1362578903,2259876163,1577254008,3126989368,2806750448,2882319354,3309861206,3309779174,2882305746,1961058756,3271628303"; var alimama_timestr="1251971674"; // --></script><script src="http://a.alimama.cn/sinf.js"></script>

<script src="http://a.alimama.cn/sinf.js"></script>

<script src="http://a.alimama.cn/sinf.js"></script>

【买就送●正版☆全新】Java2入门经典(JDK5)
88.2元 
0
0
分享到:
评论

相关推荐

    SCJP考试指南(考试号310-065 中文版

    SCJP考试指南(考试号310-065 中文版 中文版中文版

    SCJP考试指南(310-065)(英文电子书)

    《SCJP考试指南(310-065...总之,SCJP认证是Java程序员职业生涯的一个重要证明,而《SCJP考试指南(310-065)》则是一份宝贵的备考资源,它将帮助你全面理解和掌握Java编程的核心知识,为顺利通过考试打下坚实的基础。

    SCJP认证考试指南

    SCJP – Sun Certified Java Programmer (Sun Java 程序员认证).Sun 公司作为Java 语言的发明者,对全球的Java 开发人员进行技术水平认证。该认证在国际上获得了IT ...3. 持有SCJP 认证者在公司更容易获得晋升的机会

    SCJP 考试指南(310-065) 高清晰 pdf

    本书旨在帮助读者准备scJP Java 6认证考试,书中涵盖了SCJP考试的所有考试要点,详细地介绍了参加该项考试的考生和Java程序员应掌握的所有技能。主要内容包括:声明与访问控制、面向对象 赋值、运算符、流程控制、...

    SUN-JAVA-SCJP认证考试

    【SUN-JAVA-SCJP认证考试】是Java开发者的一项基础资格认证,全称为Sun Certified Programmer for the Java 2 Platform, Standard Edition。这个考试主要针对Java编程语言的基础知识,包括语法、面向对象概念、异常...

    SCJP考试指南(考试号310-065)(英文)

    《SCJP考试指南(考试号310-065)》是一本针对SUN认证SCJP(Sun Certified Programmer for Java 6)考试的重要参考书籍。SCJP是Java程序员的基础认证,旨在验证开发者对Java语言核心概念的理解和应用能力。考试号310-...

    SCJP 6.0 CX-310-065 真题题库+英文原版教材

    一本是英文原版教材,被传为SCJP的"圣经".这本书是专门针对于考试的考点而讲,不适合于JAVA入门,但最适于考试.但只看课程内容和重点总结就可以,题可以不用看,因为有真题. 另一个文件是台湾省的一个老师总结出的题库,...

    SUN认证——SCJP考试题库(310-055)

    《SUN认证——SCJP考试题库(310-055)》是一份针对Sun Microsystems公司(现已被Oracle收购)的Java程序员认证考试的重要参考资料。SCJP(Sun Certified Programmer for the Java Platform, Standard Edition)是...

    Scjp认证考试指南

    SCJP 的学习/考试过程是相对相对比较明确的,首先学员参加SL-275的培训课程(标准费用大致在2600人民币,包括考试券、教材费),也可以单独购买考试券(Certification Voucher,费用现在是1250元),然后在Prometric...

    SCJP 认证考试指南

    ### SCJP 认证考试指南知识点详述 #### 一、SCJP 认证概述 - **名称**:SCJP 全称为 Sun Certified Java Programmer,即 Sun 认证的 Java 程序员证书。 - **颁发机构**:由 Sun Microsystems(太阳微系统公司)...

    SCJP考试指南(考试号310-065 中文版)

    本书旨在帮助读者准备scJP Java 6认证考试,书中涵盖了SCJP考试的所有考试要点,详细地介绍了参加该项考试的考生和Java程序员应掌握的所有技能。主要内容包括:声明与访问控制、面向对象 赋值、运算符、流程控制、...

    SCJP考试指南(考试号310-065)光盘附带的MasterExam模拟题

    SCJP(Sun Certified Programmer for the Java 2 Platform, Standard Edition)是Java编程语言的一个认证考试,主要用于验证候选人的基础知识和编程能力。这个考试是针对Java SE(标准版)平台的,以前由Sun ...

    SCJP Java 考试指南(考试号310-065)

    SCJP(Sun Certified Programmer for the Java 2 Platform, Standard Edition)是Oracle公司为Java程序员提供的一项认证考试,考试号310-065。这个认证主要针对的是Java SE(标准版)平台的基础编程知识,旨在验证...

    SCJP 认证考试指南中文官方版

    本指南,即"SCJP 认证考试指南中文官方版",是为准备SCJP考试的考生提供的一份官方参考资料。它涵盖了考试的所有核心主题,包括但不限于以下内容: 1. **Java语法基础**:深入讲解Java编程语言的基本语法,如变量、...

    scjp最新试题----pdf

    这份"scjp最新试题----pdf"文档很可能是为了帮助考生准备SCJP考试而编写的,包含了最新的试题集。SCJP考试通常包括多选题和填空题,涉及以下几个关键的知识点: 1. **Java语法**:这是基础中的基础,包括变量声明、...

    SCJP考试指南(考试号310-065)

    SCJP(Sun Certified Programmer for the Java 2 Platform, Standard Edition)是Oracle公司为Java程序员提供的一项认证考试,考试号310-065。这个认证主要针对的是Java SE(标准版)平台的基础编程知识,旨在验证...

    JAVA SCJP 认证 310-065 考试模拟软件

    这款"JAVA SCJP 认证 310-065 考试模拟软件"是一个专门为备考者设计的学习工具,它模拟了真实的考试环境,帮助考生熟悉考试流程和格式。70道题目代表了正式考试中的题量,每题选择选项数目有标识,有助于考生了解...

    SCJP_认证考试指南(中文版).zip

    本书旨在帮助读者准备SCJP Java 5认证考试。书中涵盖了SCJP考试的所有考试要点,详细地介绍了参加SCJP的考生和Java程序员所应该掌握的所有技能。 本书主要内容包括:声明和访问控制、面向对象、赋值和初始化、...

Global site tag (gtag.js) - Google Analytics