登录
首页 >  文章 >  java教程

包访问示例

来源:dev.to

时间:2024-09-30 17:10:01 468浏览 收藏

怎么入门文章编程?需要学习哪些知识点?这是新手们刚接触编程时常见的问题;下面golang学习网就来给大家整理分享一些知识点,希望能够给初学者一些帮助。本篇文章就来介绍《包访问示例》,涉及到,有需要的可以收藏一下

包访问示例

在所提供的示例中,book 和 bookdemo 类属于同一个包,因此 bookdemo 可以毫无问题地访问 book,因为标准访问会授予同一包中所有成员的可见性。

但是,如果 book 和 bookdemo 类位于不同的包中,bookdemo 将无法访问 book。为了允许使用其他包中的 book,必须对 book 类进行三处更改:

  • 将 book 类声明为 public:这使得该类可以在 bookpack 包之外访问。
  • 公开 book 构造函数:这将允许您在其他包中创建 book 实例。
  • 将 show() 方法声明为 public:这样就可以在 bookpack 包之外调用它。

代码示例:公开书籍

  1. 在bookpack包中定义book类(文件:book.java)
package bookpack;

// agora a classe book é pública para permitir o acesso a partir de outros pacotes.
public class book {
    private string title;
    private string author;
    private int pubdate;

    // construtor público
    public book(string t, string a, int d) {
        title = t;
        author = a;
        pubdate = d;
    }

    // método público para exibir os detalhes do livro
    public void show() {
        system.out.println(title);
        system.out.println(author);
        system.out.println(pubdate);
        system.out.println();
    }
}

示例:从另一个包访问图书

  1. 使用 bookpackext 包中的 book(文件:usebook.java) 在此示例中,usebook 是位于不同包 (bookpackext) 中的类,要使用 book,需要使用完整包名称 (bookpack.book) 来限定类名。
// esta classe está no pacote bookpackext.
package bookpackext;

// usa a classe book do pacote bookpack.
class usebook {
    public static void main(string args[]) {
        // qualifica a classe book com o nome do pacote para acessá-la.
        bookpack.book books[] = new bookpack.book[5];

        // cria uma lista de livros
        books[0] = new bookpack.book("java: a beginner's guide", "schildt", 2014);
        books[1] = new bookpack.book("java: the complete reference", "schildt", 2014);
        books[2] = new bookpack.book("the art of java", "schildt and holmes", 2003);
        books[3] = new bookpack.book("red storm rising", "clancy", 1986);
        books[4] = new bookpack.book("on the road", "kerouac", 1955);

        // exibe os detalhes de cada livro
        for (int i = 0; i < books.length; i++) {
            books[i].show();
        }
    }
}

变更说明:

书班资格:
book 类前面有包名称 (bookpack.book),告诉编译器在哪里可以找到类定义。
如果没有这个资格,usebook 类将无法在 bookpack 包中找到 book。

book 类的必要更改:
公共类:公共类 book 声明允许 book 在其原始包之外被访问。
公共构造函数:可以从另一个包创建 book 类对象。

public show() 方法:以便可以在 bookpack 包外显示书籍详细信息。

编译和执行的目录结构:

src/
|-- bookpack/
|   |-- book.java
|
|-- bookpackext/
|   |-- usebook.java

编译和运行步骤:
编译 book 类:

javac src/bookpack/book.java

从 src 目录编译 usebook 类:

javac src/bookpackext/usebook.java

运行 usebook:

java -cp src bookpackext.UseBook

注意事项:
当从另一个包访问公共类时,您可以使用完整限定名或使用 import 语句来使类更易于使用,而无需限定每个实例。
该示例展示了如何使用类成员可见性(公共、私有等)和包限定来模块化代码并控制 java 程序不同部分之间的访问。

以上就是《包访问示例》的详细内容,更多关于的资料请关注golang学习网公众号!

声明:本文转载于:dev.to 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>