/**
* 结婚
* @author FuJianshi
*
*/
public class Person {
private String name; //姓名
private int age; //年龄
private String gender; //性别
private Person partner; //配偶
public Person(String name, int age, String gender) {
super();
this.name = name;
this.age = age;
this.gender = gender;
}
public void marry(Person p){
System.out.println(this.name + "和" + p.name + "要结婚");
//引用数据类型比较不用== ,用equals
if(this.gender.equals(p.gender)){
System.out.println("他们两个是同性,不允许结婚!");
return;
}
if("男".equals(this.gender) && age < 23 ||
"女".equals(this.gender) && age < 20){
System.out.println(this.name + "不到法定年龄!");
return;
}
if("男".equals(p.gender) && p.age < 23 || "女".equals(p.gender) && p.age < 20){
System.out.println(p.name + "不到法定年龄!");
return;
}
if(this.partner != null){
System.out.println(this.name + "已经结婚!");
return;
}
if(p.partner != null){
System.out.println(p.name + "已经结婚!");
return;
}
this.partner = p;
p.partner = this;
System.out.println("你们两个可以结婚,祝你们百年好合");
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public String getGender() {
return gender;
}
public void setGender(String gender) {
this.gender = gender;
}
public Person getPartner() {
return partner;
}
public void setPartner(Person partner) {
this.partner = partner;
}
}
测试
public class PersonTest {
public static void main(String[] args) {
Person p1 = new Person("张三",23,"男");
Person p2 = new Person("李四",23,"男");
Person p3 = new Person("小红娘",20,"女");
Person p4 = new Person("三娘",22,"女");
p1.marry(p3);
p1.marry(p4);
p1.getPartner();
}
}