SCJP认证考试复习笔记系列之二

原创 2004年07月03日 22:50:00

      下周去考SCJP,这两天再复习一下。

  1. 调用线程实例的start()方法他的run()方法会运行,你直接调用run()它也会运行。
  2. Java中方法参数是按值传递的,最简单的情况就是传递基本数据类型。他不能更改传递给他的参数的,例如下面的程序会输出0
    public class MyClass
    {
     public static void main(String argv[])
     {
                    MyClass mc = new MyClass();
                    int i = 0;
                    mc.increment(i);
                    System.out.println(i);
            }
          void increment(int i)
     {
                    i++;
            }
    }
  3. throws用在方法的声明中表示方法可能出现异常,throw表示抛出一个异常。不要混淆
  4. finally中抛出异常可以导致try中的异常被忽略。看下面的例子
    public class Test2
    {
     public static void main(String[] args) throws Exception
     {
      try
      {
       f(); 
      }
     
      finally
      {
      
       m();
       
      }
      
     }
     
     public static void f() throws MyException
     {
      throw new MyException(); 
     }  
     
     public static void m() throws MyException2
     {
      throw new MyException2(); 
     } 
    }
    class MyException extends Exception
    {}
    class MyException2 extends Exception
    {}
  5.    assert Exp1:Exp2这种形势中 Exp2如果是方法的话必须有返回值,可以是基本数据类型也可以是任何Object但是不可以void。
  6. 如果你提供了一个类的构造器那么编译器就不会提供无参数的构造器给你了,往往在扩展类的时候会出现问题,下面的例子就不能通过编译
    class Base
    {
            Base(int i)
     {
      System.out.println("Base");
     }
    }
    class Derived extends Base
    {
     public static void main(String argv[])
     {
      Derived d = new Derived();
     }
     
     void Derived()
     {
      System.out.println("Derived");
     }
    }
  7. 构造器是不能被覆盖的
  8. native的方法是不能有body的,因为他们通常用c/c++来实现
  9. public class MyClass
    {
     private static int x = getValue();
     private static int y = 5;
     
     private static int getValue()
     { 
      return y;
     }
     
     public static void main(String args[])
     {
      System.out.println(x); 
       System.out.println(y);
     } 
    }
    这段程序的输出会是0,5。因为首先x,y都会设置为默认值0,当给他们赋值的时候y还是0,所以返回的y付给了x,所以x=0,然后给y赋值=5
  10. 引用声明为final的表示他不能再指向其他的对象,但是不说明引用的内容不能被修改
  11. 数组声明的时候,如果是基本数据类型的初始化为0或者false,如果是对象的初始化为null
  12. String = String+char是合理的 char = char+String是不合理的
  13. StringBuffer sb = new StringBuffer("haha"); String s1 = "haha";System.out.println(s1.equals(sb));输出会是false的。不要被迷惑,不同类型的比较输出是false String和StringBuffer在层次上没有关系
  14. static的方法中不能使用this
  15. &可以用在两个int之间表示bit与操作  &&不能用在两个int之间 要在布尔型之间使用

 

SCJP认证考试复习笔记系列之二

  • zgqtxwd
  • zgqtxwd
  • 2008年04月25日 05:49
  • 112

Java认证考试心得:顺利通过SCJP测试全接触

来源:ChinaITLab 收集整理2004-5-17 11:09:00  Java以其平台无关性、,Java技术以其独特的优势对Java掌握的程度,参加Su绩通过了SCJP1.4的认证考面向对象、支...
  • kiOm
  • kiOm
  • 2004年10月24日 19:17
  • 2415

SCJP认证考试复习笔记系列之一

  • zgqtxwd
  • zgqtxwd
  • 2008年04月25日 06:00
  • 111

JAVA--scjp证书。

过了SCJP,得分94%,自我感觉良好。下面把我自己的复习,考试过程在这里做个小结吧:      1.知识背景和概况:      我不是程序员,在大学做毕业设计的时候用Java系统,后来就没...
  • weixin_35773751
  • weixin_35773751
  • 2017年09月18日 10:05
  • 1126

SCJP一些笔记 hanic [原作]

SCJP一些笔记出处  1,初始化 类变量自动初始化为0或者null,局部变量使用前一定要初始化2,主类型过载 类型匹配顺序:按照byte->short->char->int->long->floa...
  • candyfudp
  • candyfudp
  • 2004年08月08日 15:22
  • 555

[hdu-2042] 不容易系列之二

不容易系列之二 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total ...
  • u011506951
  • u011506951
  • 2014年04月28日 18:15
  • 793

SCJP认证考试

  • ytwtz1987
  • ytwtz1987
  • 2010年01月08日 14:25
  • 260

HDU:2042不容易系列之二解题报告

递推公式:a[i]=2*(a[i-1]-1); #include __int64 a[58]; int main() {  int n,m,i;  a[0]=3;a[1]=4;  for(i=2;i ...
  • runningtortoises
  • runningtortoises
  • 2012年12月05日 17:05
  • 235

Sun Java认证考试系列简介

Sun Java认证考试系列简介: (详见: http://suned.sun.com/US/certification/) SCJP (SUN CERTIFIED PROGRAMMER FOR JA...
  • glaswein
  • glaswein
  • 2006年02月10日 14:01
  • 734

spring 复习笔记

Spring 框架提供约 20 个模块,可以根据应用程序的要求来使用1. 核心容器: 核心容器由核心,Bean,上下文和表达式语言模块组成,它们的细节如下:核心模块提供了框架的基本组成部分,包括 Io...
  • zhugeyangyang1994
  • zhugeyangyang1994
  • 2017年01月11日 18:00
  • 551
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:SCJP认证考试复习笔记系列之二
举报原因:
原因补充:

(最多只允许输入30个字)