一个人有一个手机,一个手机只属于这个人, 利用OOP设计
我的是这样的
public class Test6 {
public static void main(String[] args) {
Phones iphone=new Phone("白色","6s",110); //这里显示Phone错了
Persons p=new Person("王重阳"); //这里显示Person错了
p.setPhones(iphone);
p.sayHello();
iphone.setPersons(p);
iphone.sayHello();
}
}
abstract class Phones{
protected String color;
protected String type;
protected int tel;
private Persons persons;
public Phones(String color, String type, int tel) {
super();//Object
this.color = color;
this.type = type;
this.tel = tel;
}
public Persons getPersons() {
return persons;
}
public void setPersons(Persons persons) {
this.persons = persons;
}
public abstract void sayHello();
class Phone extends Phones{
public Phone(String color, String type, int tel) {
super(color, type, tel);
}
public void sayHello() {
System.out.println("我的主人是:"+super.getPersons().name+",我的颜色是:"+super.color+",我的型号是:"+super.type+",我的号码是:"+super.tel);
}
}
}
abstract class Persons{
protected String name;
private Phones phones;
public Persons(String name) {
super();
this.name = name;
}
public Phones getPhones() {
return phones;
}
public void setPhones(Phones phones) {
this.phones = phones;
}
public abstract void sayHello();
class Person extends Persons{
public Person(String name){
super(name);
}
public void sayHello() {
System.out.println("我的名字是:"+super.name+",我的手机颜色是:"+super.getPhones().color+"我的手机型号是:"+super.getPhones().type+",我的手机号码收:"+super.getPhones().tel);
}
}
下面放个图
我的是这样的
public class Test6 {
public static void main(String[] args) {
Phones iphone=new Phone("白色","6s",110); //这里显示Phone错了
Persons p=new Person("王重阳"); //这里显示Person错了
p.setPhones(iphone);
p.sayHello();
iphone.setPersons(p);
iphone.sayHello();
}
}
abstract class Phones{
protected String color;
protected String type;
protected int tel;
private Persons persons;
public Phones(String color, String type, int tel) {
super();//Object
this.color = color;
this.type = type;
this.tel = tel;
}
public Persons getPersons() {
return persons;
}
public void setPersons(Persons persons) {
this.persons = persons;
}
public abstract void sayHello();
class Phone extends Phones{
public Phone(String color, String type, int tel) {
super(color, type, tel);
}
public void sayHello() {
System.out.println("我的主人是:"+super.getPersons().name+",我的颜色是:"+super.color+",我的型号是:"+super.type+",我的号码是:"+super.tel);
}
}
}
abstract class Persons{
protected String name;
private Phones phones;
public Persons(String name) {
super();
this.name = name;
}
public Phones getPhones() {
return phones;
}
public void setPhones(Phones phones) {
this.phones = phones;
}
public abstract void sayHello();
class Person extends Persons{
public Person(String name){
super(name);
}
public void sayHello() {
System.out.println("我的名字是:"+super.name+",我的手机颜色是:"+super.getPhones().color+"我的手机型号是:"+super.getPhones().type+",我的手机号码收:"+super.getPhones().tel);
}
}
下面放个图