2017-04-12 85 views
-2

所以我一直在试图设置值的对象内没有运气的对象。这是我需要做的。Java - 对象内的对象

第1类:接口(主)同MovieDatabase对象

2类:MovieDatabase与Movie对象

3类:电影与需要4个值。电影,导演等的名称

我以前只使用过一个对象,并通过另一个类访问过,但我不知道如何在对象中做到这一点。任何使用上述类的例子将不胜感激。

+2

针对你要找是一个Java面向对象教程/指南。这不是主题:[help/on-topic] – AxelH

+0

可以用一般化的方式解释更多,目前它看起来很简单OOPs概念 – Ambika

+0

你不需要一个接口本身imo,它并不困难。您需要两个类,包含4个变量的Movie,至少包含一个变量的MovieDatabase(Movie的一个实例)。最佳做法是将其声明为私有,并使用getter(&setters,如果需要)访问/修改数据。 **我推荐阅读关于封装数据,通用面向对象编程等。访问将非常简单:'MyMovieDB.getMovie()。getDirector()'。 – Seth

回答

2

一个简单的例子

Movie

public class Movie { 


    private String name; 
    private String director; 


    public Movie(String name,String director){ 

     this.name=name; 
     this.director=director; 
    } 

    public String getName() { 
     return name; 
    } 

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

    public String getDirector() { 
     return director; 
    } 

    public void setDirector(String director) { 
     this.director = director; 
    } 

} 

MovieDatabase其包含电影对象的列表

public class MovieDatabase { 


    List<Movie> movies = new ArrayList<>(); 

    public List<Movie> getMovies() { 
     return movies; 
    } 

    public void setMovies(List<Movie> movies) { 
     this.movies = movies; 
    } 


} 

现在让我们尝试创造一些Movie对象并将其添加到列表Movie的 对象是在MovieDatabase类中的字段

public class stackoverflow { 

     public static void main(String[] args) { 
      // TODO code application logic here 

      Movie a,b,c,d; 
      MovieDatabase db = new MovieDatabase(); 


      a = new Movie("Movie1","Director1"); 
      b = new Movie("Movie2","Director2"); 
      c = new Movie("Movie3","Director3"); 
      d = new Movie("Movie4","Director4"); 

      db.movies.add(a); 
      db.movies.add(b); 
      db.movies.add(c); 
      db.movies.add(d); 


      for(Movie movie : db.movies) 

System.out.println("the movie "+movie.getName()+" is directed by "+movie.getDirector()); 



     } 

    } 

输出:

电影剧场1由Director1导演

电影Movie2由Director2导演

电影MOVIE3由Director3

执导电影Movie4由Director4