2010-09-26 2 views
0

Я создаю API для телефонной книги, которая имеет 3 различных типов телефонных номеров: факс, домашний, рабочий, CELLJava Перечисления - номер добавить() и классификация метод

Я хочу, чтобы добавить номер к но не хотите классифицировать FAX, HOME, WORK и т. д. как примитивные типы, поскольку я считаю, что я могу изменить его позже.

Я пытался использовать перечисления, но неясно, как я могу эффективно использовать его в этом случае.

код я работал до сих пор в этой части:

private enum NumberType{ 

FAX, WORK, HOME, CELL} 

class PhoneNumber{ 

PhoneNumber(int Number, NumberType type){ 

    this.number = Number; 

    this.type = type; 
} 
.. 
getter and setter for above 
.. 
} 

Но я до сих пор не понимаю, как я мог бы назначить конкретный PHONENUMBER к конкретному NumberType.

Я все еще смущен. Я хочу, чтобы кто-то использовал эту функцию.

Пожалуйста, помогите.

спасибо.

ответ

0

Вы можете написать метод

NumberType findPhoneNumberType(String phoneNumber) 
{ 
     //logic to differentiate between various types of phone numbers. 
     //advantage: you can also check for illegal phone number values. 
} 

Вы можете вызвать этот метод, прежде чем вызывать упомянутый конструктор.

NumberType nt = findPhoneNumberType(number); 
PhoneNumber phoneNumber = new PhoneNumber(number, nt); 

Я также предлагаю использовать строки, а не номера телефонов.

0

Вы просто должны создать новый экземпляр PhoneNumber:

PhoneNumber homeNumber = new PhoneNumber(1234567890, NumberType.HOME); 

Я также хотел бы предложить использовать строку для телефонов :)

 Смежные вопросы

  • Нет связанных вопросов^_^