编写一个Java程序,实现以下功能:
怎么定义。
可以按照以下代码定义一个Person类:
public class Person {
String name;
int age;
String gender;
public Person(String name, int age, String gender) {
this.name = name;
this.age = age;
this.gender = gender;
}
public void displayInfo() {
System.out.println("Name: " + name);
System.out.println("Age: " + age);
System.out.println("Gender: " + gender);
}
}
在这个类中,我们定义了三个属性:姓名、年龄、性别,都是字符串类型。我们还定义了一个构造方法,用于初始化这些属性。在构造方法中,我们使用了this关键字来引用当前对象,以便给当前对象的属性赋值。最后,我们定义了一个displayInfo方法,用于输出这个人的信息。在这个方法中,我们使用了System.out.println函数来输出信息。
参考如下:
public class Person {
private String name;
private int age;
private String sex;
public Person(String name, int age, String sex) {
this.name = name;
this.age = age;
this.sex = sex;
}
public String show() {
return toString();
}
@Override
public String toString() {
return "Person{" +
"name='" + name + '\'' +
", age=" + age +
", sex='" + sex + '\'' +
'}';
}
}
不知道你这个问题是否已经解决, 如果还没有解决的话://购物者类
public class Person {
//1.定义人名字
private String personName;
public String getPersonName() {
return personName;
}
public void setPersonName(String personName) {
this.personName = personName;
}
//2.购买方法
Product shopping(Supermarket market,String name) {//传入超市和商品名
return market.sell(name);//调用超市类卖货方法返回结果
}
}
//定义Person类
class Person{
//成员变量
private String name;
private int age;
private String gender;
//构造方法,不带参数
public Person(){
name = "小明";
age = 18;
gender = "男";
}
//构造方法,带3个参数的
public Person(String name,int age,String gender){
this.name = name;
this.age = age;
this.gender = gender;
}
//成员方法
public void setName(String name){
this.name= name;
}
public String getName(){
return name;
}
public void setAge(int age){
this.age = age;
}
public int getAge(){
return age;
}
public void setGender(String gender){
this.gender= gender;
}
public String getGender(){
return gender;
}
public void showInfo(){
System.out.println("姓名:"+name+",年龄:"+age+",性别:"+gender);
}
}
//定义Student类,继承自Person类
class Student extends Person{
//新增成员变量
private String school;
//构造方法,不带参数
public Student(){
super(); //调用父类的构造方法
school = "某某学校";
}
//构造方法,带4个参数
public Student(String name,int age,String gender,String school){
super(name,age,gender); //调用父类的带3个参数的构造方法
this.school = school;
}
//get/set方法
public String getSchool() {
return school;
}
public void setSchool(String school) {
this.school= school;
}
//打印角色信息
public void showInfo(){
System.out.println("姓名:" + super.getName());
System.out.println("年龄:" + super.getAge());
System.out.println("性别:" + super.getGender());
System.out.println("学校:" +school);
}
}
//测试代码,在main函数中创建Student对象并打印信息
public class TestStudent {
public static void main(String[] args) {
//调用带参数的构造方法创建Student对象
Student student1 = new Student("张三",20,"男","某某大学");
student1.showInfo();
//调用不带参数的构造方法创建Student对象
Student student2 = new Student();
student2.showInfo();
//调用父类的成员方法设置Student对象的姓名、年龄和性别
student2.setName("李四");
student2.setAge(22);
student2.setGender("女");
student2.showInfo();
}
}