在 Java 中,类的继承是单一继承,也就是说,一个子类只能拥有一个父类,所以 extends 只能继承一个类。
下面是Java的继承类型:
单继承
public class A{......}
public class B extends A{......}
多重继承
public class A {............}
public class B extends A {...........}
public class C extends B {.....}
不同类继承同一个类
public class A{ .........}
public class B extends A {...........}
public class C extends A {...........}
多继承(不支持)
public class A {.......... }
public class B {...........}
public class C extends A,B {……
}// Java不支持多继承
在 Java 中,implements
是用于实现一个接口的关键字。它的语法是在一个类的声明中使用 implements
关键字后,后面跟着一个或多个接口的名称,多个接口使用逗号进行分隔。
当一个类实现了一个接口时,它必须实现该接口中定义的所有方法。这些方法在接口中被声明,但没有在接口中被实现。实现接口的类必须提供这些方法的具体实现。在 Java 中,类只能继承一个类,但是可以实现多个接口。
以下是一个使用 implements
关键字实现接口的示例:
public interface A {
public void eat();
public void sleep();
}
public interface B {
public void show();
}
public class C implements A,B {
}
使用 implements 关键字可以变相的使java具有多继承的特性,使用范围为类继承接口的情况,可以同时继承多个接口(接口跟接口之间采用逗号分隔)。
在 Java 中,super 和 this 都是关键字,用于访问类的成员变量和方法。
super 关键字表示超类或父类,可以用来调用超类中的方法或构造函数。当子类继承父类时,如果子类中有与父类相同的方法或变量,可以使用 super 关键字调用父类中的方法或变量。
例如,以下代码展示了如何使用 super 来调用父类的构造函数:
public class Parent {
private String name;
public Parent(String name) {
this.name = name;
}
public String getName() {
return name;
}
}
public class Child extends Parent {
public Child(String name) {
super(name);
}
}
在上面的代码中,Child 类继承了 Parent 类,并通过 super 关键字调用了父类的构造函数。
this 关键字表示当前对象,可以用来访问当前对象的成员变量或方法。当类中存在同名的实例变量和局部变量时,可以使用 this 关键字来区分它们。此外,在构造函数中,可以使用 this 关键字调用当前类的其他构造函数。
例如,以下代码展示了如何使用 this 关键字来访问当前对象的成员变量:
public class Person {
private String name;
public Person(String name) {
this.name = name;
}
public String getName() {
return this.name;
}
}
在上面的代码中,getName() 方法中使用 this.name 来访问当前对象的 name 成员变量。
final 可以用来修饰变量(包括类属性、对象属性、局部变量和形参)、方法(包括类方法和对象方法)和类。
final 含义为 "最终的"。
使用 final 关键字声明类,就是把类定义定义为最终类,不能被继承,或者用于修饰方法,该方法不能被子类重写:
声明类:
final class 类名 {//类体}
声明方法:
修饰符(public/private/default/protected) final 返回值类型 方法名(){//方法体}
注: final 定义的类,其中的属性、方法不是 final 的。