public class Student { // 定义学生的两个属性:姓名(name String)和年龄(age int) String name; int age; // 获取学生年龄 public int getAge() { return age; } // 设置学生的年龄,将形参的值赋值给成员变量 public void setAge(int age) { this.age = age; } // 获取学生姓名 public String getName() { return name; } // 设置学生姓名,将形参的值赋值给成员变量 public void setName(String name) { this.name = name; } // 该方法实现输出学生信息的功能。 输出格式:学生姓名:xx,年龄:xx public void info() { return "学生姓名:"+ name + ",年龄:"+age; } }
时间: 2023-06-07 15:11:38 浏览: 87
好的,你的问题是关于这段Java代码的吗?
是的,我的问题是,这段Java代码是用来做什么的?
这段Java代码定义了一个名为Student的类,其中包含name和age这两个属性,以及getAge()、setAge()、getName()和setName()四个方法,分别用于获取和设置学生的姓名和年龄信息。另外,该类还定义了一个info()方法,用于输出学生的姓名和年龄信息。
相关问题
#include <iostream> using namespace std; #include <iostream> #include <cstring> using namespace std; class Student { /********* Begin *********/ //在此处声明Student类 private: int age; string name; public: Student(int m,string n); Student( ); void SetInfo(int m,string n); int getAge(); string getName(); /********* End *********/ }; /********* Begin *********/ //在此处定义Student类 Student::Student(int m,string n) { age=m; name=n; } Student::Student( ) { age=0; name="No"; } void Student::SetInfo(int m,string n) { age=m; name=n; } int Student::getAge() { return age; } string Student::getName() { return name; } /********* End *********/
这是一个简单的 C++ 程序,定义了一个名为 Student 的类。类中有两个私有成员变量 age 和 name,以及四个公有成员函数:构造函数 Student(int m, string n)、无参构造函数 Student()、SetInfo(int m, string n) 和 getAge()、getName()。构造函数用于初始化对象,无参构造函数默认初始化 age 为 0,name 为 "No"。SetInfo() 函数用于设置学生的信息,包括年龄和姓名。getAge() 和 getName() 函数分别用于获取学生的年龄和姓名。
#include<iostream> using namespace std; class student { private: string name; int age; const int id; static int num; public: // 构造函数 student(); student(string, int age = 20, int id = 20201120); student(const student& s); // 成员函数 void set_name(string name); void set_age(int age); string get_name() const; int get_age() const; int get_id() const; static int get_num(); void print(void) { cout << name<< " " << age << " " << id << endl; } // 友元函数 friend bool operator==(const student& s1, const student& s2); // 析构函数 ~student(); }; int student::num = 0; // 构造 student::student() : name("null"), age(0), id(20201120+num) {} student::student(string name, int age, int id) : name(name), age(age), id(id) { ++num; } student::student(const student& s) : name(s.name), age(s.age), id(20201120+num) {} // 成员 void student::set_name(std::string name) { this->name = name; } void student::set_age(int age) { this->age = age; } string student::get_name() const { return name; } int student::get_age() const { return age; } int student::get_id() const { return id; } int student::get_num() { return num; } // 友元 bool operator==(const student& s1, const student& s2) { return (s1.name == s2.name) && (s1.age == s2.age); } // 析构 student::~student() { num--; } //对比 int equals(student s1, student s2) { if (s1 == s2) { cout << "True" << endl;} else { cout << "False" << endl;} return 0; } int main() { student s1; s1.print(); //带参数有默认值 student s2("小红",18); s2.print(); //使用set更改姓名 s2.set_name("小蓝"); s2.print(); student s3(s2); s3.print(); //测试友元函数是否相同 equals(s2, s3); }对这段代码的输出进行分析
这段代码的输出如下:
```
null 0 20201120
小红 18 20201121
小蓝 18 20201121
小蓝 18 20201122
True
```
代码中创建了三个student对象,s1使用默认构造函数创建,输出为"null 0 20201120";s2使用带参数的构造函数创建,输出为"小红 18 20201121";s2调用set_name函数将姓名更改为"小蓝",再次输出为"小蓝 18 20201121";s3使用拷贝构造函数从s2创建,输出为"小蓝 18 20201122";最后调用equals函数比较s2和s3,因为两者姓名和年龄相同,所以输出为True。
阅读全文