java编程 定义一个接口Person,声明相关的属性和方法,再用Teacher类和Student

作者&投稿:殷勤卢 (若有异议请与网页底部的电邮联系)
编程题:定义一个接口Person,声明相关的属性和方法,再用Teacher类和Student类去继~

public interface Person{ public String name; public int age; public Person(String name, int age);}public class Teacher implements Person{ public Teacher(String name, int age){ super(name, age); } public String toString(){ return String.format("Teacher[name=%s, age=%d]", name, age); }}public class Student implements Person{ public Student (String name, int age){ super(name, age); } public String toString(){ return String.format("Student[name=%s, age=%d]", name, age); }}public class Main{ public static void main(String[] args){ for(int i = 0; i < 10; i++){ Person t = new Teacher("t" + i, i); Person s = new Student("s" + i, i); System.out.println(t); System.out.println(s); } }}

给你写了一个,不知道能不能帮到你。
package com.test;
public class Person {
//name、sex属性
private String name;
private String sex;

public String getName() {
return name;
}


public void setName(String name) {
this.name = name;
}


public String getSex() {
return sex;
}


public void setSex(String sex) {
this.sex = sex;
}

//无参的构造方法
public Person(){

}
//有参的构造方法
public Person(String name,String sex){


this.name=name;
this.sex=sex;

}
//显示属性的方法
public String display(){


return "name :"+this.name+",sex :"+this.sex;
}

}



//Teacher 类

package com.test;
public class Teacher extends Person {
private int age;
public int getAge() {
return age;
}


public void setAge(int age) {
this.age = age;
}
//重载display 方法
public String display(){

return "name : "+this.getName()+",sex : "+this.getSex()+",age : "+this.getAge();
}
}

interface Person
{
public abstract void SetName(String strName);
public abstract String GetName();
public abstract void SetSex(boolean bSex); //真表示男,假表示女
public abstract String GetSex();           //返回“男”或“女”
public abstract void ShowInf();
}
class Student implements Person
{
private String    strName;
private boolean   bSex;             //true=男,false=女
private String    strStudentNumber; //学号
private String    strAddress;       //住址
public Student() {}
public Student(String name,String sex,String StuNum,String adr)
{
strName = name;
bSex = (sex.equals("男") ? true : false);
strStudentNumber = StuNum;
strAddress = adr;
}
public void SetName(String strName)
{
this.strName = strName;
}
public String GetName()
{
return strName;
}
public void SetSex(boolean bSex)
{
this.bSex = bSex;
}
public String GetSex()
{
return bSex ? "男" : "女";
}
public void SetStudentNumber(String strStuNum)
{
strStudentNumber = strStuNum;
}
public String GetStudentNumber()
{
return strStudentNumber;
}
public void SetAddress(String strAdr)
{
strAddress = strAdr;
}
public String GetAddress()
{
return strAddress;
}
public void ShowInf()
{
System.out.println("姓名:" + this.strName);
System.out.println("性别:" + (this.bSex ? "男" : "女"));
System.out.println("学号:" + this.strStudentNumber);
System.out.println("住址:" + this.strAddress);
}
}
class Teacher implements Person
{
private String    strName;
private boolean   bSex;           //true=男,false=女
private String    strWorkNumber;  //工号
private String    strProfession;  //职称。等级:正高级、高级、一级、二级、三级
public Teacher() {}
public Teacher(String name,String sex,String WrkNm,String prf)
{
strName = name;
bSex = (sex.equals("男") ? true : false);
strWorkNumber = WrkNm;
strProfession = prf;
}
public void SetName(String strName)
{
this.strName = strName;
}
public String GetName()
{
return strName;
}
public void SetSex(boolean bSex)
{
this.bSex = bSex;
}
public String GetSex()
{
return bSex ? "男" : "女";
}
public void SetWorkNumber(String WrkNm)
{
strWorkNumber = WrkNm;
}
public String GetWorkNumber()
{
return strWorkNumber;
}
public void SetProfession(String prf)
{
strProfession = prf;
}
public String GetProfession()
{
return strProfession;
}
public void ShowInf()
{
System.out.println("姓名:" + this.strName);
System.out.println("性别:" + (this.bSex ? "男" : "女"));
System.out.println("工号:" + this.strWorkNumber);
System.out.println("职称:" + this.strProfession);
}
}
public class Main
{
public static void main(String[] args)
{
Teacher[] teacher = new Teacher[10];
Student[] student = new Student[10];
int i;
        teacher[0] = new Teacher("张三","男","1001","一级");
        teacher[1] = new Teacher("李四","女","1031","高级");
        teacher[2] = new Teacher("王五","女","1012","高级");
        teacher[3] = new Teacher("赵六","男","1231","正高级");
        teacher[4] = new Teacher("李树","男","1051","一级");
        teacher[5] = new Teacher("刘诗","女","1022","二级");
        teacher[6] = new Teacher("孙义","男","1101","二级");
        teacher[7] = new Teacher("诸葛聪","男","1001","高级");
        teacher[8] = new Teacher("王丽","女","1001","一级");
        teacher[9] = new Teacher("张美","女","1001","一级");
    student[0] = new Student();
        student[0] = new Student("梁星","男","2015100","地址1");
        student[1] = new Student("茹薇","女","2015122","地址2");
        student[2] = new Student("昕可","女","2015322","地址3");
        student[3] = new Student("龙震","男","2015264","地址4");
        student[4] = new Student("彬栋","男","2015210","地址5");
        student[5] = new Student("梅柔","女","2015031","地址6");
        student[6] = new Student("辰康","男","2015004","地址7");
        student[7] = new Student("鸿斌","男","2015079","地址8");
        student[8] = new Student("初昭","女","2015298","地址9");
        student[9] = new Student("雪静","女","2015233","地址10");
for (i = 0; i < 10; i ++)
{
System.out.println("<--老师信息-->");
teacher[i].ShowInf();
System.out.println("<--学生信息-->");
student[i].ShowInf();
}
}
}



连城县15521198980: java:定义一个Person 接口,声明showName()方法,showAge()方法,showSex()方法,定义一个student类实现 -
关易希美: Person.java public interface Person { public abstract String showName(); public abstract String showAge(); public abstract String showSex(); } Student.java public class Student implements Person { @Override public String showName() { return null; ...

连城县15521198980: 编程题:定义一个接口Person,声明相关的属性和方法,再用Teacher类和Student类去继 -
关易希美: 虫虫 发表于 2013-11-25 17:20 #includeusing namespace std; 上面的字符指针赋值写错了,用stcpy

连城县15521198980: java编程!谢谢!编一个应用抽象类程序,并将抽象类改为接口. -
关易希美: 设计抽象类并实现抽象类中抽象方法的子类 抽象类: Person_abstract public abstract class Person_abstract { public abstract void eat(); public void show(){ System.out.println("我是人"); } } 实现类1:Student_abstract public class Student_...

连城县15521198980: java定义一个接口 -
关易希美: 将以下四个文件放在同一个目录下编译运行: 文件1: /**MyApp.java**/ public class MyApp { public static void main(String[] args) { IBaseGraphics c1 = new Circle(5); IBaseGraphics r1 = new Rectangle(3,4); c1.printData(); r1.printData(); } } 文件...

连城县15521198980: java中返回类型为接口?怎么返回? -
关易希美: 返回类型为一个接口的方法的话,可以用接口的类型作为返回值,也可以用实现了这个接口的类作为返回类型,比如你在一个person类中定义了一个方法:public List<?> say(){}; 那么下面调用此方法的时候可以用 List<?> list = new person().say(); 或者用 ArrayList<?> arr = new person().say().

连城县15521198980: Java关于接口引用子类对象
关易希美: 在你这里是完全一样的, 其实有很多人认为java的接口是多此一举,没有必要的 java的接口只是为了实现“多继承”和制作java的标准用的,例: 我自己写了一套X软件,里面有A,B两个类,但是A,B是为了满足1,2这两种不同的用户使用的,...

连城县15521198980: java编程实现所有的类和接口 -
关易希美: package com.fifth; /** * 人的接口 * @author limz * */ public interface Person { public void eat(); } package com.fifth; /** * 老师的接口 * @author Administrator * */ public interface Teacher extends Person { public void work(); } package com.fifth; ...

连城县15521198980: java怎样定义接口 -
关易希美: 例如,定义一个用于计算的接口,在该接口中定义了一个常量PI和两个方法,具体代码如下:[java] view plaincopy public interface CalInterface {final float PI=3.14159f;//定义用于表示圆周率的常量PIfloat getArea(float r);//定义一个用于计算面...

连城县15521198980: 编写一个java程序,其中包含至少一个抽象类以及一个接口,再定义一个类实现抽象类以及接口中的方法 -
关易希美: 接口 package com.cmb.reqmgr;public interface HelloInterface {public void sayHello(); }接口实现 package com.cmb.reqmgr;public class HellpImpl implements HelloInterface { public void sayHello() {System.out.println("hello");}}抽象...

连城县15521198980: java中接口的功能及其定义格式 -
关易希美: 接口定义为 public interface 接口名称{}接口的作用是基于面向对象思想的,给你举个例子: 例如,我们有一个男人实现了“人”接口,“人”接口中有走路的方法,现在男人实现了“走路”方法,这时候,如果有个需求,要把男人换为女人,这时候只要换做女人类,并且女人类实现了“走路”方法,用女人类替换掉男人类即可. 这样的好处就是,接口没有变,也就是设计中的接口没有变,只是实现类的变化,最大程度的减少了需求变化对代码的影响. 希望对楼主有帮助,如果还有不明白的地方,请留言.

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网