bonjour tt le monde
j essaye de realiser un annuaire telephonique a l aide d une classe TelephoneNumber qui implemente une interface Comparable.Une fois cette classe cree on me demande de creer une classe abstract Position dont heritera Person et Company,apres je dois mettre le tout dans un container TreeMap en utilisant comme clef TelephoneNumber.ca fait deux semaines que je devais finir ce programme et je ne l ai toujours pas fini ,je vous prie de maider en regardant ce que j ai fait
j ai tape le code suivant:
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
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
public class TelephoneNumber implements Comparable {
         Integer directionNumber;
         Integer telNumber;
   String number=Integer.toString(telNumber)+Integer.toString(directionNumber);
  public TelephoneNumber(Integer directionNumber,Integer telNumber) {
        this.directionNumber=directionNumber;
        this.telNumber=telNumber;
    }
  public String getName()
 {
 return number;
 }

    public int compareTo(Object otherNumber) {
        
      
        return number.compareTo( ((TelephoneNumber)otherNumber).getName() );
       
    }

    public static void main(String[] args) {
        Person p = new Person("firstname","lastname",new TelephoneNumber(42,6312651));
TreeMap it = new TreeMap();
it.put(p.getTelephoneNumber(), p);
Iterator map = it.keySet().iterator();
    Object obj;
    while (map.hasNext()) {
      obj = map.next();
      System.out.println(obj + ": " + it.get(obj));}
        System.out.println("the list: "+it);    
    }
}
abstract class Position{
 
 String titre;
  String nom;
  String prenom;
 Position(){
     
 }

  Position( String titre, String nom, TelephoneNumber t){

 }

 // constructeur par recopie
  Position(Position personne){

 }
    @Override
  public String toString(){
 return "["+titre+","+prenom+","+nom+"]";
 }
        abstract void description();
    }
    class Person extends Position{
        TelephoneNumber t;
        Person(){
            
        }
        Person( String titre, String nom, TelephoneNumber t){
            super(titre,nom,t);
        }
        void description(){
            System.out.println("firstname"+prenom+"name"+nom);
        }

    Object getTelephoneNumber() {
       return t;
    }
    }
    class Company extends Position{
        Company(){
            
        }
       Company( String titre, String nom, TelephoneNumber t){
            super(titre,nom,t);
        } 
        void description(){
            
        }
 
    }
j ai un soucis avec mon programme il me renvoie l erreur suivante:
Exception in thread "main" java.lang.NullPointerException
at telephonenumber.TelephoneNumber.<init>(TelephoneNumber.java:20)
at telephonenumber.TelephoneNumber.main(TelephoneNumber.java:40)
l erreur est au niveau des phares en rouge
je n arrive pas a voir le probleme,voici le programme si qlq 1 peut y jeter un coup d oeil et m aider a comprendre l erreur merci bcp