标签:salary String 05 grade 31 phone 2021 public name
类和子类的简单实现
1、问题描述:
- 设计一个名为
Person
的类和它的两个名为Student
和Employee
的子类。 每个人都有姓名和电话号码,学生类有年级状态(大一、大二、大三或大四),员工有工资。重写每个类中的toString
方法,显示该类的所有属性。面积。
2、实现思路:
- 创建
Person
类 ,为其添加姓名(name)、电话号码(phone)这两个属性,这两个属性皆为String
类型,分别为每个属性添加对应的 get 和 set 方法。 - 创建学生类
Student
并使其继承于Person
类,为其添加String
类型的年级(grade)属性,并为该属性添加 get 和 set 方法。 - 创建员工类
Employee
并使其继承于Person
类,为其添加double
类型的工资(salary)属性。为每个属性添加 get 和 set 方法。 - 为每个类添加一个无参构造方法和一个带有全部属性的构造方法。
- 为每个类重写
toString
方法,显示该类的所有属性。 - 创建测试类
Test
并创建每个类的对象,对象信息参照「挑战提示」中的表格,打印显示每个对象的toString
方法。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-hm2PKunx-1622435980464)(https://dn-simplecloud.shiyanlou.com/courses/uid1509696-20210531-1622435839952)]
3、实现代码:
package org.lanqiao.entity;
public class Person {
private String name;
private String phone;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getPhone() {
return phone;
}
public void setPhone(String phone) {
this.phone = phone;
}
public String toString() {
return "Person{name="+getName()+",phone=" +getPhone()+"}";
}
public Person(String name, String phone) {
this.name = name;
this.phone = phone;
}
public Person() {
}
}
package org.lanqiao.entity;
public class Student extends Person{
private String grade;
public String getGrade() {
return grade;
}
public void setGrade(String grade) {
this.grade = grade;
}
public String toString() {
return "Student{name="+getName()+",phone=" +getPhone()+", grade="+this.grade+"}";
}
public Student(String name, String phone, String grade) {
super(name, phone);
this.grade = grade;
}
public Student(String grade) {
this.grade = grade;
}
public Student(){
super();
}
}
package org.lanqiao.entity;
public class Employee extends Person {
private double salary;
public double getSalary() {
return salary;
}
public void setSalary(double salary) {
this.salary = salary;
}
public String toString() {
return "Employee{name="+getName()+",phone=" +getPhone()+", salary="+this.salary+"}";
}
public Employee(String name, String phone, double salary) {
super(name, phone);
this.salary = salary;
}
public Employee(double salary) {
this.salary = salary;
}
public Employee(){
super();
}
}
package org.lanqiao.test;
import org.lanqiao.entity.*;
public class Test {
public static void main(String[] args){
Person person=new Person("小蓝","16655557777");
Student student=new Student("小红","15588885555","大一");
Employee employee=new Employee("小白","17676765656",4000);
System.out.println(person.toString());
System.out.println(student.toString());
System.out.println(employee.toString());
}
}
4、运行结果:
建包的截图:
5、遇到的问题及解决方法:
未添加包名的时候,系统会不识别。
添加相应的包名后,VScode莫名的报错
在从新试了一下之后就没问题了
标签:salary,String,05,grade,31,phone,2021,public,name 来源: https://blog.csdn.net/qq_43423320/article/details/117414159
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。