Java 中的继承:类和接口

java 中的继承是面向对象概念中一个简单而强大的属性,它允许您将父类的属性和方法重写到子类中,这样另一个子类也可以从子类继承。Java 在所有类中都使用此属性。

Java 中用于继承的关键字是 扩展

The Object 类

编程时,我们注意到方法在任何地方都重复,例如: toObject()equals()wait()...等。这是因为在 java 中,所有类都继承自 super 类。对象 这是整个层次结构的根。

Java
所有类都继承自 Object

Example

在此示例中,我们声明了一个具有 name 和 address 属性的 person 类。这两个子类都继承自 Person:第一类主管和第二类 Employee,后者具有附加属性 salary.


class Person
{
public String name;
public String 地址;
}
class 员工扩展 Person
{
int salary;
public Employee(String name, String address, int salary)
{
this.name=name;
this.address=address;
this.salary=salary;
}
}
class Director extends Person
{
public Director()
{
this.name= name”;
this.adresse= 地址”;
}
}

note:
子类继承声明的成员protectedpublic,并且还继承了成员 private 如果它与父类位于同一包中。

java

考虑到在这家公司中有几个功能,可以扩展为从它继承到子类中: 工程师、会计师、秘书......etc.

uml

class Engineer extends Employee
{
public Engineer()
{
super(name”,address”,110);
}

public void concevoir(){System.out.println(我是工程师”);}
public void developper(){};
}

class Accountant extends Employee
{
public Accountant()
{
this.name= name”;
this.adresse= 地址”;
this.salary = 3000;
}

public void manageAccounts(){};
public void gererLesBilans(){};
}
我们以层次结构的形式看到结构,这棵树帮助我们理解程序的结构。Engineer 和 Employee 这两个类之间的区别在于 Engineer 中使用了 super 关键字,它直接调用父类的构造函数。默认情况下,super() 调用制造商而不带参数,超级(P1, P2,...) 调用带有参数的构造函数。

super 关键字还用于调用更高类的方法。下面是一个示例:


class Ingenieur_reseaux extends Employee
{
public Ingenieur_reseaux ()
{
super(name”,address”,3100);
}

public void concevoir(){
super.concevoir();
System.out.println(我设计了公司的网络架构”);
}
}
如果没有 super,将调用构造函数 Ingénieur_réseaux 中声明的 design() 方法,而不是 engineer 中声明的 design() 方法,因此要引用父方法,您需要添加关键字 super.

运行时:

我是一名工程师
我设计了公司的网络架构

接口继承

接口允许多重继承。

interface print{
void print();
}
interface display{
void display();
}
interface interfaceIA extends print,display{
void imprimer_afficher();
}
class testIA implements interfaceIA{

void print(){System.out.println(Printing”)};
void display(){System.out.println(打印完成”)};

public static void main(){
testIA test = new testIA();
test.print();
test.display();
}
}