Java知识点梳理——继承 2019-04-25

1、定义:继承允许创建分等级层次的类,就是子类继承父类的特征行为,使得子类对象具有父类实例的方法,      使得子类具有父类相同的行为。

2、继承的特性:

  a、子类拥有父类非priavte的属性、方法;

  b、子类可以拥有自己的属性和方法、即子类可以对父类进行扩展;

  c、子类可以用自己的方式实现父类的方法;

  d、java的继承是单继承,但是可以多重继承;单继承:一个子类只可以继承一个父类;多重继承:A类继承     B类,B类继承C类,即C类是B类的父类,B类是A类的父类;

  e、继承提高了类之间的耦合性(继承的缺点,提高了代码间的联系)

3、extends关键字:类的继承是单一继承,一个子类只能拥有一个父类,extends只能继承一个类

1 public class A { 2 public A() { 3 System.out.println("hello world");4 } 5 } 6 // B子类继承A父类(extends只能继承一个类)7 public class B extends A{8 }

4、implements关键字:implements使类可以继承多个接口,多个接口用逗号分隔

1 public interface A {2 public void sayA();3 } 4 public interface B {5 public void sayB();6 }7 // C子类继承A、B多个接口(implements使类可以继承多个接口,多个接口用逗号分隔)8 public class C implements A,B {9 }

5、super关键字:用来引用当前对象的父类,实现对父类成员的访问;

6、this关键字:当前对象的引用;

7、final关键字:声明类不能被继承,即最终类,修饰方法不能被子类重写;

  a、语法: final class 类名 {  方法、属性 }             访问修饰符(public、private、default、protected)  final  返回值类型   方法名(参数){  方法体  }

  b、实例变量也可以被定义为 final,被定义为 final 的变量不能被修改;被声明为 final 类的方法自动地声明     为final,但是实例变量并不是 final;

  c、访问修饰符

    public——对所有类可见,被声明为 public 的类、方法、构造方法和接口能够被任何其他类访问;

    private——在同一类中可见 不能修饰类(外部类),被声明为 private 的方法、变量和构造方法只能被      所属类访问;

    default——在同一包内可见;

    protected——对同一包内的类和所有子类可见 不能修饰类(外部类)

  d、非访问修饰符

    static——用来修饰类方法和类变量;

    final——用来修饰类、方法和变量,final 修饰的类不能够被继承,修饰的方法不能被继承类重新定义,      修饰的变量为常量,是不可修改的;

    abstract——用来创建抽象类和抽象方法;

    synchronized、volatile——主要用于线程的编程,synchronized 关键字声明的方法同一时间只能被一      个线程访问;

8、构造器:子类不能继承父类的构造器(构造方法、构造函数),如果父类的构造器带有参数,子类的构造器       中必须显示的通过super关键字调用父类的构造器(带参数);如果父类的构造器不带有参数,不需       要子类显示调用,系统会自动调用

Copyright © 2019 宝马娱乐11222 All Rights Reserved
李宝祥
地址:深圳市前海深港合作区前湾一路
全国统一热线:15582986204