Java中的Book類是一個(gè)很好的實(shí)例,它可以用于演示有參和無(wú)參構(gòu)造函數(shù)的使用。構(gòu)造函數(shù)是對(duì)象初始化的重要一步,可以在實(shí)例化對(duì)象時(shí)向其傳遞參數(shù)。
public class Book { private String title; private String author; private int pages; //無(wú)參數(shù)構(gòu)造函數(shù) public Book() { this.title = "Unknown title"; this.author = "Unknown author"; this.pages = -1; } //有參數(shù)構(gòu)造函數(shù) public Book(String title, String author, int pages) { this.title = title; this.author = author; this.pages = pages; } //Getter和Setter方法 public String getTitle() { return title; } public void setTitle(String title) { this.title = title; } public String getAuthor() { return author; } public void setAuthor(String author) { this.author = author; } public int getPages() { return pages; } public void setPages(int pages) { this.pages = pages; } //toString方法 @Override public String toString() { return "Book{" + "title='" + title + '\'' + ", author='" + author + '\'' + ", pages=" + pages + '}'; } }
這是一個(gè)簡(jiǎn)單的Book類,它有三個(gè)屬性:書名、作者和頁(yè)數(shù)。它還具有一個(gè)無(wú)參數(shù)構(gòu)造函數(shù)和一個(gè)有參數(shù)構(gòu)造函數(shù)。無(wú)參數(shù)構(gòu)造函數(shù)將所有屬性設(shè)置為默認(rèn)值,而有參數(shù)構(gòu)造函數(shù)將根據(jù)傳遞的參數(shù)設(shè)置屬性。同時(shí),該類還具有Getter和Setter方法以及toString方法。
以下是無(wú)參構(gòu)造函數(shù)的使用:
Book book1 = new Book(); System.out.println(book1);
這將輸出“Book{title='Unknown title', author='Unknown author', pages=-1}”,因?yàn)樵趧?chuàng)建實(shí)例時(shí)沒有傳遞任何參數(shù)。
以下是有參構(gòu)造函數(shù)的使用:
Book book2 = new Book("Java編程思想", "Bruce Eckel", 1168); System.out.println(book2);
這將輸出“Book{title='Java編程思想', author='Bruce Eckel', pages=1168}”,因?yàn)樵趧?chuàng)建實(shí)例時(shí)傳遞了三個(gè)參數(shù),它們被用于設(shè)置屬性值。
總之,有參和無(wú)參構(gòu)造函數(shù)是Java中非常常見的對(duì)象初始化方式之一。通過使用構(gòu)造函數(shù),可以向?qū)ο髠鬟f參數(shù)并設(shè)置其屬性,使其更加靈活和通用。