2014-11-28 9 views
0

я это супер класс с именем Человек который наследуется двумя другими классами, Сотрудник & Client Я использую интерфейс, так как я могу использовать дженерики на два подклассы и, следовательно, класс Person реализует этот интерфейс, Доступно для поиска. Возможно ли, чтобы класс Person реализовал интерфейс и Serializable, чтобы я мог сэкономить?Реализовать Сериализуемый к классу реализации интерфейса

package compuwiz; 
public abstract class Person implements Searchable //implements Serializable ?? 
{ 
public Person() 
{ 
    pName = ""; 
    pSurname = ""; 
    pIdCard = ""; 
} 
public Person(String nm, String sn, String id) 
{ 
    pName = nm; 
    pSurname = sn; 
    pIdCard = id; 
} 
String pName; 
String pSurname; 
String pIdCard; 
public String GetName() 
{ 
    return pName; 
} 
public String GetSurname() 
{ 
    return pSurname; 
} 

@Override 
public String GetID() 
{ 
    return pIdCard; 
} 
//Set Methods 
public void SetName(String nm) 
{ 
    pName=nm; 
} 
public void SetSurname(String sn) 
{ 
    pSurname=sn; 
} 
public void SetID(String id) 
{ 
    pIdCard=id; 
} 

@Override 
public String ToString() 
{ 
    return this.GetName()+ " " +this.GetSurname()+ "ID card number:" +this.GetID(); 
} 

ответ

1

Да. Это и есть цель интерфейсов. Класс может реализовывать несколько интерфейсов одновременно:

public abstract class Person implements Searchable, Serializable { 
    //current code of your class... 
} 

Кроме того, я бы рекомендовал использовать правильное именование ваших методов. Это, используйте стандарт camelCase, первая буква идет в нижнем регистре, тогда вы используете верхний регистр для следующего слова, содержащегося в названии. Пример:

//this will throw a compiler error unless you define a ToString method in a top interface 
@Override 
public String ToString() { 
} 

Для

@Override 
public String toString() { 
} 
+0

Большое спасибо! Я ценю это. –

+0

Добро пожаловать. –

1
public abstract class Person implements Serializable, Searchable {} 

Java Suppports Несколько интерфейсов уделом

+0

Спасибо большое! Не думал об этом –

+0

Добро пожаловать: D – Mateo