Java教程

Java面向对象之继承与修饰符

本文主要是介绍Java面向对象之继承与修饰符,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

Java面向对象之继承与修饰符

继承

  1. 含义
    继承是面向对象三大特征之一,能使子类具有父类的属性和方法,还可以在子类中重新定义,和追加属性和方法。

  2. 实现
    继承通过extends实现
    class +子类 +extends+父类{ }

  3. 好处
    继承可以让不同类之间产生关系,子类可以使用父类中的私有成员。
    提高了代码的复用性。(相同成员放在一个类)
    提高了代码的维护性。

  4. 短处
    继承让类与类之间产生了关系,类的耦合性增强了,但降低了子类的独立性。【耦合性耦合性:也称块间联系。指软件系统结构中各模块间相互联系紧密程度的一种度量。模块之间联系越紧密,其耦合性就越强,模块的独立性则越差。模块间耦合高低取决于模块间接口的复杂性、调用的方式及传递的信息。】

  5. 成员变量的访问特点
    采用就近原则(子类局部—>子类成员---->父类成员)

  6. super () 方法
    super 代表对父类对象的引用。

  7. 继承中结构方法的访问特点
    子类会继承父类中的数据,可能还会使用父类的数据。所以,子类初始化之前,一定要先完成父类数据的初始化,原因在于,每一个子类构造方法的第一条语句默认都是:super()。所以如果父类中没有无参构造方法,只有带参构造方法时,我们应该在父类中自己提供一个无参构造方法或者通过super去调用父类的带参构造方法。

  8. 方法重写
    当子类需要父类的功能,而功能主体子类有自己特有内容时,可以重写父类中的方法,这样,即沿袭了父类的功能,又定义了子类特有的内容。
    注意
    1. 私有方法不能被重写(父类私有成员子类是不能继承的)
    2. 子类方法访问权限不能更低(public > 默认 > 私有)

  9. java继承的注意事项
    java类中只支持单继承,不支持多继承class A extends B, C { } //错误示范 ;但是支持多层继承,举个例子:爸爸,爷爷和儿子;爸爸继承爷爷,儿子继承爸爸,儿子就间接继承了爸爸和爷爷两个人的属性。

修饰符

  1. package

  2. import

  3. 权限修饰符
    在这里插入图片描述

  4. final

                    * fianl修饰类:该类不能被继承(不能有子类,但是可以有父类)
                    * final修饰方法:该方法不能被重写
                    * final修饰变量:表明该变量是一个常量,不能再次赋值
    
  5. ianl修饰基本数据类型变量

    * final 修饰指的是基本类型的数据值不能发生改变
    
  6. final修饰引用数据类型变量

      * **final 修饰指的是引用类型的地址值不能发生改变,但是地址里面的内容是可以发生改变的**
      * `public static void main(String[] args){
                         final Student s = new Student(23);
                         s = new Student(24);  // 错误
                         s.setAge(24);  // 正确
                       }
    
  7. static
    *含义:static关键字是静态的意思,可以修饰(成员方法),(成员变量)。
    特点:被类的所有对象共享,这也是我们判断是否使用静态关键字的条件。

  8. static访问的特点

            1. 非静态的成员方法
               * 能访问静态的成员变量
               * 能访问非静态的成员变量
               * 能访问静态的成员方法
               * 能访问非静态的成员方法
           2. 静态的成员方法
                能访问静态的成员变量
                能访问静态的成员方法
    
这篇关于Java面向对象之继承与修饰符的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!