复杂的事情要简单做;   简单的事情要认真做;   认真的事情要重复做;   重复的事情要创造性地做。

信心 恒心 决心 创意 乐意

も军魂ミ 心系java

Java的魅力:跨平台、动态的Web、Internet计算 Java在Web、移动设备以及云计算方面前景广阔 我的java编程不是梦!!! 俗话说的好:“授人以鱼不如授人以渔”.
posts - 10, comments - 12, trackbacks - 0, articles - 5
  BlogJava :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理

java关键字this与super的区别

Posted on 2010-11-07 02:08 セ军魂ミ 阅读(2151) 评论(0)  编辑  收藏
java关键字this与super的区别:

      在类的继承下,我们会经常用到关键字this和super,我在这给大家做个简单的介绍,希望可以能给大家些帮助:        
   关键字this: 是直接访问本类中的内容;this.本类属性,调用本类中的属性;this.本类方法(),可以不写this,也表示调用本类的this 是访问本类中的其他构造,必须放在首行

       关键字super: 是由子类访问父类的内容;super.父类属性,如果属性没有被覆写,则也可以不写super;super.父类方法(),如果方法没有被覆写,则可以不用 加super也表示调用父类中的方法super是访问父类中的构造方法,必须放在首行


  eg:
this
public class Person {
 String name;
 int age;
 public String getName() {
  return name;
 }
 public void setName(String name) {
  this.name = name;                                                                                              
                                                     //this访问的是本类中的内容
}
 public int getAge() {
  return age;
 }
 public void setAge(int age) {
  this.age = age;
 }
 //这里我们定义一个说话的方法
 void say()
 {
 
  System.out.println("姓名:"+name+",年龄:"+age);
 }
 }


super
class Student extends Person{
  //如果此处任何内容都不写,则至少应该与Person类的内容一致
 public Student(String name,int age,String school){
  super(name,age);                                                                                            
                                                        //super访问的是父类Person中的内容
  this.setSchool(school);
  System.out.println("*****子类的构造方法****");
 }
 private String school;
 public void setSchool(String school){
  this.school=school;
 }
  public String getSchool()
     {
             return this.school;
     }
 public void fun(){
  setName("zhijun");
  setAge(21);
 }
 public void print(){
  System.out.println(getlnfo()+",学校:"+school);
 }
 }

只有注册用户登录后才能发表评论。


网站导航: