【学习总结|DAY013】Java电影管理程序练习

在这篇博客中,我将详细解析一个简单的Java电影管理程序。该程序使用面向对象编程(OOP)的思想,定义了电影类和一些基本操作。接下来,我们将逐步分析代码,并解释各个部分的功能。

一、Movie类

public class Movie {
    private int id; // 电影编号
    private String filmName; // 电影名
    private double score; // 电影评分
    private String dirName; // 导演名

    public Movie() {
    }

    public Movie(int id, String filmName, double score, String dirName) {
        this.id = id;
        this.filmName = filmName;
        this.score = score;
        this.dirName = dirName;
    }

    // Getter 和 Setter 方法
    ...
}

1.1 类的属性

Movie类有四个属性:id(电影编号)、filmName(电影名称)、score(电影评分)和dirName(导演名称)。它们都是私有的,以保护数据的封装性。

1.2 构造方法

类中有一个无参构造方法和一个含参构造方法。含参构造方法用于创建时初始化电影的属性。

1.3 Getter和Setter方法

这些方法允许我们外部访问和修改私有属性,遵循了Java的封装原则。

二、MovieOpt类

public class MovieOpt {
    public Movie[] generateData() {
        // 生成电影列表数据
        Movie[] movies = new Movie[5];
        movies[0] = new Movie(1,"出拳吧,妈妈",7.9,"唐晓白");
        ...
        return movies;
    }

    public void showMovies(Movie[] movies) {
        // 将指定的电影数组数据遍历展现
        System.out.println("电影列表如下:");
        for (int i = 0; i < movies.length; i++) {
            Movie m = movies[i];
            System.out.println("编号:"+m.getId()+" 电影:"+m.getFilmName());
        }
    }

    public void printMovieById(int id, Movie[] movies) {
        // 根据ID带数组中匹配电影打印
        for (int i = 0; i < movies.length; i++) {
            Movie m = movies[i];
            if (m.getId() == id) {
                System.out.println("电影详情如下:");
                System.out.println("编号:"+m.getId());
                System.out.println("名称:"+m.getFilmName());
                System.out.println("评分:"+m.getScore());
                System.out.println("导演:"+m.getDirName());
                return;
            }
        }
    }
}

2.1 生成电影数据

generateData()方法生成并返回一个包含五部电影的数组。每部电影通过Movie类的构造方法初始化。

2.2 显示电影列表

showMovies(Movie[] movies)方法接受一个电影数组作为参数,通过循环遍历数组,并打印出每部电影的编号和名称。

2.3 根据ID查找电影

printMovieById(int id, Movie[] movies)方法根据用户输入的电影编号,遍历电影数组,并打印出该电影的详细信息。

三、demo01类(主类)

public class demo01 {
    public static void main(String[] args) {
        MovieOpt movieOpt = new MovieOpt();
        Movie[] movies = movieOpt.generateData();
        movieOpt.showMovies(movies);

        Scanner sc = new Scanner(System.in);
        System.out.println("请输入电影编号查看数据:");
        int id = sc.nextInt();
        movieOpt.printMovieById(id, movies);
    }
}

3.1 程序入口

main方法是应用程序的入口。首先,创建MovieOpt对象,并生成电影数据。然后,调用showMovies()方法显示电影列表。

3.2 用户输入

程序使用Scanner类获取用户输入的电影编号,并调用printMovieById()方法输出指定电影的详细信息。

四、总结

这段代码展示了如何利用Java的面向对象特性实现一个简单的电影管理程序。通过定义Movie类和MovieOpt类,程序可以存储、显示和查询电影信息。这个程序可以作为学习Java OOP的基础,帮助新的Java程序员理解类、对象、封装和基本的输入输出操作。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值