JAVA以前的学习笔记(二)Java认证考试

文章作者 100test 发表时间 2010:01:01 15:41:51
来源 100Test.Com百考试题网


  this和supper关键字
  一个是this另外一个是supper.
  首先介绍supper吧。它比较好介绍点。
  大家都知道java中很重要的就是类的概念。而类可以被继承的,被继承的类称为父类,继承的那个类称为子类。
  而父类又被称为超类,所以这超类就比较容易说点。这也是区分使用this和supper的好方法吧。
  Super是子类调用当前对象父类的构造函数(且必须是构造函数)方法,在这必须注意的是构造函数。如有不懂的可看书,什么是构造函数,在这就不写了。
  This是调用当前构造函数的方法。
  而且都只能在类的第一个写。
  如果子类的函数或对象把父类的函数或对象覆盖了。而且子类又想使用父类的函数或对象,就得使用super来调用。
  在来就是我看到的以个很经典的程序。
  public class ATM
  {
  public Account a.
  public ATM (Account s)
  {
  a=s.
  }
  }
  这是程序的第一个类。
  public class Account
  {
  public ATM b.
  public int No=10.
  void openATM()
  {
  b=new ATM(this).
  }
  }
  这是程序的第二个类。
  public class Example12
  {
  public static void main(String arg[])
  {
  Account m=new Account().
  m.openATM().
  System.out.println(m.No).

  编辑特别推荐:

  指点一下:到底该不该去考JAVA认证?

  Java认证权威问答精华集
  System.out.println(m.b.a.No).
  }
  }
  这是主程序。
  可以看到的是this的使用,并不是一定的,this是调用当前构造函数的,呵呵。。
  似乎很迷糊吧。
  看 b=new ATM(this);
  而这个ATM中的this又是指的什么呢?
  看看上面 看ATM类,指的是什么?Account s,它又是什么呢?a=s.。
  这下就明白了,其实 这this就是a.
  再看主程序,
  System.out.println(m.No);
  System.out.println(m.b.a.No);
  第一个输出是10.想必大家都知道,第二个呢?
  m.b.a.No呢?
  看。。。。m.openATM();
  还有
  void openATM()
  {
  b=new ATM(this);
  }
  而那个
  public ATM (Account s)
  {
  a=s;
  }
  看到了么?
  他们之间的调用,其实程序最后 就是m.No很多人都不懂这是为什么。
  慢慢看吧。。
  看明白了就知道了。



相关文章


专家解读:Java终止函数深度分析Java认证考试
Java语言常见字符串注意事项Java认证考试
JAVA以前的学习笔记(四)Java认证考试
JAVA以前的学习笔记(三)Java认证考试
JAVA以前的学习笔记(二)Java认证考试
JAVA以前的学习笔记(一)Java认证考试
J2EE体系架构设计介绍1J2EE模型及J2EE设计模式Java认证考试
J2EE常见问题J2EE平台的特征与优点Java认证考试
Struts2Validation框架的一些事宜Java认证考试
澳大利亚华人论坛
考好网
日本华人论坛
华人移民留学论坛
英国华人论坛