2013-02-21 82 views

回答

0

不,你不能这样做,因为这两行不具有相同的含义。一行是说PersonA是PersonB的朋友,PersonB是PersonA的朋友。从功能上讲,在你的例子中,这两个关系可能具有相同的含义,但在数据库级别情况并非如此(友谊并不总是相互......这很可悲)。您唯一能做的就是将其隐藏在您的API中:

public class Person { 

    private Set<Person> friends = new HashSet<Person>(); 

    public void addFriend(Person person) { 
     friends.add(person); 
     person.getFriends().add(this); 
    } 
}