Bonjour,

Je suis en train de développer une application qui duplique une base de données. J'ai un problème avec l'héritage.
3 classes : Database, Table1 et Table2.
variables de Database : url, login et password
Autre variables de Database : matable1, matable2
Table1 et Table2 hérite de Database pour accéder aux variables url, login et password.

Code de Database :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
 
public class Database {
 
    protected String url;
    protected String login;
    protected String password;
    private Table1 matable1;
    private Table2 matable2;
 
    public Database() {
        this ("", "", "");
    }
 
    public Database(String url, String login, String password) {
        this.url = url;
        this.login = login;
        this.password = password;
        matable1 = new Table1();
        matable2 = new Table2();
    }
Code de Table1 :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
 
public class Table1 extends Database {
    public Table1() {
        super ();
    }
J'ai un problème de StackOverflowError. Je pense que le problème est du à une trop grande récursivité entre Table et Database. En gros, une boucle infinie. C'est un problème de conception mais je ne vois pas d'ou vient le problème.
Ce que je souhaite juste c'est que depuis une table on puisse accéder aux informations de connexion et que quand on créé une database, que l'on créé les variables matable1 et matable2.
J'espère m'être fait comprendre !
Je sais que je ne suis pas obligé de mettre en place l'héritage dans ma solution mais je souhaiterais comprendre. Mais peut_être que je ne peut tout simplement pas mettre en place l'héritage ?

Merci d'avance