面向对象的基本编程

Ano*_*mus 6 java arrays oop arraylist object

我目前正在学习Java,并被要求编写一个程序,将演员和电影作为课程处理.

actor类具有以下属性:(
Name, Address, age, myFilm一个数组或arraylist,用于保存特定演员已出演的所有电影.

电影类具有以下属性:
Name, Code(String,String)

我用getter和setter方法实现了这些类来处理数据:
到目前为止我的actor类:

public class actor {
    private String name;
    private String address;
    private int age;
    int[] myFilms = new int[3];

     public actor (String name, String address, int age) {
     }


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

     public void setAddress (String address) {
          this.address = address;
     }

     public void setAge (int age) {
          this.age = age;
     }

     public void setFilm () {

     }

     public String getName () {
         return name;
     }

     public String getAddress () {
         return address;
     }  
}
Run Code Online (Sandbox Code Playgroud)

我的电影课:

public class film {

    private String name;
    private String code;

    //Constructor
    public film () {

    }

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

    public String getName (){
        return name;
    }

    public String getCode (String name) {
        //Get code:
        //Split Function
        String[] words = name.split("\\s+");
        String code = "";
        for (int i=0; i < words.length; i++) {
             code = code + words[i].charAt(0);
             code = code.toUpperCase();
        }
        return code;
    }
}
Run Code Online (Sandbox Code Playgroud)

我正在打砖墙,如何使程序动态化,以显示每个演员的整部电影.这是一个大学辅导,我也需要在某些时候做一个深刻的阵列副本.我对OO几乎是全新的,所以这对我来说是一个棘手的任务.

任何建议或正确方向的观点都将受到极大的赞赏.

Mar*_*tin 3

关于你的课程的两条评论...

  1. 为什么不这样声明演员的电影:

    private List<Film> myFilms = new ArrayList<Film>();

    这样,您将能够从演员对象中动态添加和删除影片对象引用。例如,您可以为列表实现 getter 和 setter,并从外部对其进行操作。列表(或一般的集合)比原始数组更容易操作。

  2. 考虑用第一个大写字母来声明类,这是一种约定。例如:ActorFilm