关于Java的特点之继承

标签:完全   xtend   public   ...   存在   obj   抽象   方法   nim   

继承--解决之道

继承可以解决代码复用,让我们的编程更加靠近人类思维。当多个类存在相同的属性(变量)和方法时,可以从这些类中抽象出父类(比如刚才的Student),在父类中定义这些相同的属性和方法,所有的子类不需要重新定义这些属性和方法,只需要通过extends语句来声明继承父类:

语法:class 子类 extends 父类

这样,子类就会自动拥有父类定义的某些属性和方法。

 

继承--深入讨论

1、父类的哪些属性(变量)、方法被子类继承了?并不是父类的所有属性、方法都可以被子类继承

   父类                                      子类

public 属性;                       public 属性;

protected 属性;     继承     protected 属性;

private 属性;          →                属性;

属性;

public 方法;                      public 方法;

protected 方法;                protected 方法;

private 方法;                                方法;

方法;

2、结论

从图可以看出,父类的public修饰符的属性和方法;protected修饰符的属性和方法;默认修饰符属性和方法被子类继承了,父类的private修饰符的属性和方法不能被子类继承。

 

继承--注意事项

1、子类最多只能继承一个父类(指直接继承)

2、java所有类都是Object类的子类 (所有的子类都可以逐级继承,例:爷->父->子->孙)

3、JDK6中有202个包3777个类、接口、异常、枚举、注释和错误

4、在做开发的时候,强烈建议大家多查jdk帮助文档

5、在使用类时,实在不知道怎么办,多使用搜索引擎

 

定义类的改进

在提出包后,我们类的定义就更加完善了:

class 类名{      class 类名{       class类名{      package包名;

成员变量;   →    成员变量;   →   成员变量;   → class 类名{  

}                     成员方法;        构造方法;        成员变量;

                    }                      成员方法;       构造方法;

                                           }                  成员方法;

                                                               }   ↓

  ↓←←←←←←←←←←←←←←←←←←←←←←←←←

package 包名;

class 类名 extends 父类{        待定

关于Java的特点之继承

扫一扫手机访问