懂java的请进,帮解决个小程序

来源:百度知道 编辑:UC知道 时间:2024/09/22 00:59:01
写一个类Person,包含以下属性:String name; int age; boolean gender;Person partner。为Person类写一个marry(Person p)方法,代表当前对象和p结婚,如若可以结婚,则输出恭贺信息,否则输出不能结婚原因。要求在另外一个类中写一个主方法,来测试以上程序。(下列情况不能结婚:1,同性;2,未达到结婚年龄,男<24,女<22;3,某一方已婚)

package com.jpioneer.entity;

/**
* @author JetGuo
*
*/
public class Person {
private String name;
private int age;
private boolean gender;// true 真为男,false 假为女
private Person partner;// 配偶信息

/**
* @param person
* 配偶信息 用来设置配偶信息
*/
public void marry(Person person) {

if (this.gender == person.isGender()) {
System.out.println("所选配偶性别相同,不能结婚!!");
} else if ((this.gender && this.age < 24)
|| (!this.gender && this.age < 22)) {
System.out.println("你还不到结婚年龄!!");
} else {
if ((this.gender && this.age < 24)
|| (!this.gender && this.age < 22)) {
System.out.println("所选配偶不到结婚年龄!!");
} else if (this.partner != null) {
System.out.println("你已经结婚了,不能结婚!!");
} else if (person.getPartner() != null) {
System.out.println("所选配偶已经结婚