首页 > 代码库 > 类的继承

类的继承

1.高级类特性修饰符

 static:修饰属性,方法,块,内部类。

2.静态static

如果某个方法不需要与特定的对象绑定可以用static修饰。被static修饰的方法称为静态方法。

static方法可以用对象调用,也可以用类名调用,但是建议用类名调用。

 技术分享

  静态方法的判定:如果某个方法和实例无关,就是说不管哪个对象调用这个方法都执行的是相同的操作,与对象没有任何关系,则可以判定此方法是静态方法。

  静态方法不能直接调用非静态方法,只有通过创建对象,用对象名调用非静态方法。

3.static块 

    static块是直接在代码块前面直接加上static。静态块只有在类加载的时候执行一次,不管创建多少个对象都不会在执行。一个类中可以有多个静态块并按照顺序执行。

4.final的定义与使用

  final使用与类、方法、和属性。

  属性:定义时就必须赋初值或者在构造方法中赋值,并且后期都不能够修改;当final修饰属性时就可以把属性看着是一个常量了。

  方法:定义必须有现实代码,在子类的方法中不能被覆盖;对参数可以定义为final是为了防止在函数中变量被修改。

  类:不能定义为借口或者抽象类,不能被继承。

5.变量以及常量

  在类中定义的变量可以叫做成员变量或者属性。在方法中定义的变量叫做局部变量。属性可以用private等权限修饰符进行修饰,但是局部变量不可以。属性和局部变量都可以用final修饰。

  属性的生存周期是长久的,随着类的加载或者创建初始化被初始化,直到没有对象引用才结束。

  局部变量的生存周期短,只有方法体执行完局部变量就被回收。

6.类的继承

  类的继承是指一个类定义是基于另一个已经存在的类。即子类继承父类从而实现代码的复用。子类能吸收已有的类的属性与方法并且进行扩展的。

  继承的形式:  【访问权限修饰符】【修饰符】类名 extends 父类名{子类体}

  构造方法的继承:子类中的构造方法总是优先调用父类中的构造方 

  必须将调用父类构造方法的这条语句放在子类构造方法的第一条语句位置。如果第一条语句没有调用父类的构造方法,系统将会自动地在这个位置上插入一条调用父类默认构造方法的语句,即super();

  由于默认的构造方法不带参数,所以,如果在父类中定义了带参数的构造方法,而没有定义不带参数的构造方法将会出现编译错误。这也正是建议大家在定义带参数的构造方法时,一定要定义一个不带参数的构造方法的原因所在;

  父类中那些带参数的构造方法,子类将不会自动地调用它们,必须人工地将调用它们的语句写入子类的构造方法中。

  技术分享输出结果技术分享

7.方法的覆盖

  子类可以重写一个父类的某一个方法,称为方法的覆盖。如果子类需要修改从父类继承到的方法体,就可以用方法的覆盖。

  方法覆盖的原则

  同参,同名,同返回值。访问权限不能缩小即父类是public,子类不可以是pirvate。

技术分享

 

 

 

 

类的继承