自定义类型赋值,自定义数组使用

青旅半醒 2024-03-27 16:48 149阅读 0赞

自定义类型赋值就是创建对象,将地址值赋值给变量

例如,自定义一个Employee,有一个变量 Employee employee,要给employee赋值就

new Employee();







部门类

员工类

部门类里面有员工

  1. public class Department {
  2. private String name;
  3. private int age;
  4. private Employee employee;
  5. public String getName() {
  6. return name;
  7. }
  8. public void setName(String name) {
  9. this.name = name;
  10. }
  11. public int getAge() {
  12. return age;
  13. }
  14. public void setAge(int age) {
  15. this.age = age;
  16. }
  17. public Employee getEmployee() {
  18. return employee;
  19. }
  20. public void setEmployee(Employee employee) {
  21. this.employee = employee;
  22. }
  23. public Department() {
  24. // 第2个执行
  25. System.out.println("这里是部门");
  26. }
  27. }
  28. class Employee{
  29. private String name;
  30. private int age;
  31. public String getName() {
  32. return name;
  33. }
  34. public void setName(String name) {
  35. this.name = name;
  36. }
  37. public int getAge() {
  38. return age;
  39. }
  40. public void setAge(int age) {
  41. this.age = age;
  42. }
  43. public Employee(String name, int age) {
  44. this.name = name;
  45. this.age = age;
  46. }
  47. public Employee(){
  48. // 第1个执行
  49. System.out.println("我是员工");
  50. }
  51. }
  52. class TestDE{
  53. public static void main(String[] args) {
  54. Employee employee = new Employee();
  55. employee.setAge(21);
  56. employee.setName("欣欣");
  57. Department department = new Department();
  58. department.setAge(22);
  59. department.setName("西西");
  60. // 给部门员工赋值
  61. department.setEmployee(employee);
  62. String name = department.getName();
  63. int age = department.getAge();
  64. Employee employee1 = department.getEmployee();
  65. // 输出employee1是地址值
  66. System.out.println(name + " " + age + " " + employee1);
  67. // 可以通过对象再获得对象内部的属性
  68. System.out.println(name + " " + age + " " + employee1.getName() + " " + employee1.getAge());
  69. }
  70. }

72d681eb09cba904ef0d944f0b1549b0.png







老师类

学生类

老师带了很多学生

把学生存倒数组中 Student[] stus = new Student[n]; // 数组长度为n

  1. public class Teacher {
  2. private String name;
  3. private int age;
  4. // 方法一
  5. private Student[] stu;
  6. // 方法二
  7. Student[] stu1 = new Student[3];
  8. public Teacher() {
  9. }
  10. public String getName() {
  11. return name;
  12. }
  13. public void setName(String name) {
  14. this.name = name;
  15. }
  16. public int getAge() {
  17. return age;
  18. }
  19. public void setAge(int age) {
  20. this.age = age;
  21. }
  22. public Student[] getStu() {
  23. return stu;
  24. }
  25. public void setStu(Student[] stu) {
  26. this.stu = stu;
  27. }
  28. }
  29. class Student {
  30. private String name;
  31. private int age;
  32. public Student() {
  33. }
  34. public Student(String name, int age) {
  35. this.name = name;
  36. this.age = age;
  37. }
  38. public String getName() {
  39. return name;
  40. }
  41. public void setName(String name) {
  42. this.name = name;
  43. }
  44. public int getAge() {
  45. return age;
  46. }
  47. public void setAge(int age) {
  48. this.age = age;
  49. }
  50. }
  51. class TestTS{
  52. public static void main(String[] args) {
  53. Teacher teacher = new Teacher();
  54. teacher.setAge(26);
  55. teacher.setName("阿西吧");
  56. // 方法一
  57. Student[] students = new Student[2];
  58. students[0] = new Student("小瓜",21);
  59. students[1] = new Student("小咪",19);
  60. teacher.setStu(students);
  61. System.out.println(teacher.getName() + " " + teacher.getAge() + " " + teacher.getStu());
  62. Student[] stu1 = teacher.getStu();
  63. for (int i = 0; i < stu1.length; i++) {
  64. System.out.println(stu1[i]); // 得到学生的地址
  65. System.out.println(stu1[i].getAge() + " " + stu1[i].getName()); // 得到学生的属性值
  66. }
  67. // 方法二
  68. System.out.println("=================");
  69. teacher.stu1[0] = new Student("阿鸡", 14);
  70. System.out.println(teacher.stu1[0].getName());
  71. System.out.println(teacher.stu1[0].getAge());
  72. }
  73. }

958436b537e0e37e0124adea0bcbd645.png

发表评论

表情:
评论列表 (有 0 条评论,149人围观)

还没有评论,来说两句吧...

相关阅读

    相关 定义类型2

    目录 1. 位段 1.1 什么是位段 1.2 位段的内存分配 1.3 位段的跨平台问题 2. 枚举 2.1 枚举类型的定义 2.2 枚举的优点 2.3 枚举的使