一. 需求:使用面向对象编程,模仿电影信息的展示
分析:
- 一部电影是一个Java对象,先设计电影类,再创建电影对象
- 三部电影对象可以采用数组封装起来
- 依次遍历数组中的每个电影对象,取出其信息并展示
// 创建电影类,用于后期创建电影对象
public class Movie {
// 1.成员变量使用private修饰
private String name; // 名称
private double score; // 评分
private String region; // 地区
private String type; // 类型
private String director; // 导演
private String actor; // 主演
// 2.提供一个无参构造器
public Movie(){
}
// 有参构造器
public Movie(String name,double score,String region,String type,String director,String actor){
this.name = name;
this.score = score;
this.region = region;
this.type = type;
this.director = director;
this.actor = actor;
}
// 3.提供成员变量对应的Setter,Getter方法
public void setName(String name){
this.name = name;
}
public String getName(){
return name;
}
public void setScore(double score){
this.score = score;
}
public double getScore(){
return score;
}
public void setRegion(String region){
this.region = region;
}
public String getRegion(){
return region;
}
public void setType(String type){
this.type = type;
}
public String getType(){
return type;
}
public void setDirector(String director){
this.director = director;
}
public String getDirector(){
return director;
}
public void setActor(String actor){
this.actor = actor;
}
public String getActor(){
return actor;
}
}
public class MovieSystem {
public static void main(String[] args) {
// 1.动态初始化一个电影类型的数组
Movie[] movies = new Movie[3];
// 2.给电影类型的数组依次录入电影信息
movies[0] = new Movie("长津湖",3.5,"中国","剧情/历史/战争","陈凯歌/徐克","吴京/易烊千玺");
movies[1] = new Movie("我和我的父辈",4.0,"中国大陆","剧情","吴京/章子怡","徐峥/沈腾");
movies[2] = new Movie("五个扑水的少年",3.0,"中国大陆","剧情/戏剧/运动","宋灏霖","李云来/王川");
// 3.遍历数组中的每个电影对象,取出其信息并展示
for(int i = 0;i < movies.length;i++){
Movie movie = movies[i];
System.out.println("电影名:" + movie.getName());
System.out.println("评分:" + movie.getScore());
System.out.println("地区:" + movie.getRegion());
System.out.println("类型:" + movie.getType());
System.out.println("导演:" + movie.getDirector());
System.out.println("主演:" + movie.getActor());
System.out.println("----------------------------");
}
}
}