写一个Person类,定义人的基本属性:name(姓名)、age(年龄)、gender(性别)、partner(配偶).要求至少为Person类写一个marry(Person p)方法,来判断两个人是

写一个Person类,定义人的基本属性:name(姓名)、age(年龄)、gender(性别)、partner(配偶).要求至少为Person类写一个marry(Person p)方法,来判断两个人是

题目
写一个Person类,定义人的基本属性:name(姓名)、age(年龄)、gender(性别)、partner(配偶).要求至少为Person类写一个marry(Person p)方法,来判断两个人是否可以结婚.如果可以结婚,将其partner属性赋值为其配偶.结婚必须满足以下3个条件.
1.必须是异性,同性暂时不允许结婚
2.有配偶者不能结婚,犯重婚罪.
3.要达到年龄方可结婚:男方23岁以上,女性21岁以上.
答案
package test;
/*
写一个Person类,定义人的基本属性:name(姓名)、age(年龄)、gender(性别)、partner(配偶).
要求至少为Person类写一个marry(Person p)方法,来判断两个人是否可以结婚.如果可以结婚,将其partner属性赋值为其配偶.
结婚必须满足以下3个条件.
1.必须是异性,同性暂时不允许结婚
2.有配偶者不能结婚,犯重婚罪.
3.要达到年龄方可结婚:男方23岁以上,女性21岁以上.
*/
public class Person {
public String name;
public int age;
public boolean gender;// true:男 false:女
public String partner = "";
public Person() {
}
public Person(String name, int age, boolean gender, String partner) {
this.name = name;
this.age = age;
this.gender = gender;
this.partner = partner;
}
public boolean marry(Person person) {
if (this.gender != person.gender && "".equals(this.partner)
&& "".equals(person.partner)) {
if ((this.gender && this.age > 23 && person.age > 21)
|| (!this.gender && this.age > 21 && person.age > 23)) {
this.partner = person.name;
person.partner = this.name;
System.out.println(this.name + " 和 " + person.name
+ " 够条件可以结婚啦!");
return true;
} else {
System.out.println(this.name + " 和 " + person.name
+ " ,你俩太嬾了,不要急嘛...");
}
} else {
System.out.println(this.name + " 和 " + person.name
+ " 你俩不能这么乱搞...");
}
return false;
}
public static void main(String[] args) {
Person p1 = new Person("张小三", 25, true, "");
Person p2 = new Person("李小梅", 20, false, "");
Person p3 = new Person("王二虎", 25, true, "苹果");
Person p4 = new Person("王兰花", 25, false, "");
Person p5 = new Person("赵大个", 26, true, "");
Person p6 = new Person("豆豆糖", 22, false, "");
p1.marry(p2);
System.out.println("----------------------------------");
p3.marry(p4);
System.out.println("----------------------------------");
p5.marry(p6);
}
}
//
张小三 和 李小梅 ,你俩太嬾了,不要急嘛...
----------------------------------
王二虎 和 王兰花 你俩不能这么乱搞...
----------------------------------
赵大个 和 豆豆糖 够条件可以结婚啦!
举一反三
已知函数f(x)=x,g(x)=alnx,a∈R.若曲线y=f(x)与曲线y=g(x)相交,且在交点处有相同的切线,求a的值和该切线方程.
我想写一篇关于奥巴马的演讲的文章,写哪一篇好呢?为什么好
奥巴马演讲不用看稿子.为什么中国领导演讲要看?
想找英语初三上学期的首字母填空练习……
英语翻译
最新试题
热门考点

超级试练试题库

© 2017-2019 超级试练试题库,All Rights Reserved.