package org.hanqi.pn0120; public class Book { //构造方法(构造函数) //1.方法名和类名一样 //2.构造方法没有返回值 //3.只要自定义了构造方法,就不会自动添加默认构造方法 Book() { //完成初始化 name="默认书名"; } Book(String bookname) { //初始化 name=bookname; } Book(String bookname,String category) { //初始化 name=bookname; //this代表类本身 this.category=category; } //屬性 成員變量 String name;//書名 String category="其他";//書的類別 //内容 String content="";//不是null double price=10;//价格 //成員方法 //方法的表现形式之一:没有返回值(void),没有传入参数() void print() { System.out.println("讀這本书的書名叫做《"+name+"》的書"); System.out.println("我读的书的内容"+content); } //表现形式之二:没有返回值(void),有传入参数(数据类型 参数名) void write(String mycontent) { System.out.println("我写的内容:"+mycontent); if(content.length()>=1000) { return; } content +=mycontent; System.out.println("我写完之后的内容:"+content); } //表现形式之三:有返回值()没有传入参数 String read() { //返回值 return content; } //表现形式之四:有返回值,有传入参数 //卖书 //根据卖出的数量计算并返回钱数 double sell(int count) { return (price*count); } }
package org.hanqi.pn0120; public class Test { public static void main(String[] args) { //構造一本書 Book myBook=new Book("JAVA基础教程","JAVA教程类");//默认构造方法 //myBook.name="JAVA基礎教程"; System.out.println("类别="+myBook.category); myBook.category="JAVA教程類"; System.out.println("类别="+myBook.category); myBook.content="第一章"; String str=myBook.read(); System.out.println("读出的内容="+str); myBook.write("JAVA的发展史"); str =myBook.read(); int c=3;//卖出的本数 System.out.println("读出的内容="+str); System.out.println("卖"+c+"本书的钱数"+myBook.sell(3)); System.out.println(); //第二本书 Book myBook1=new Book(); myBook1.name="战争与和平"; myBook1.category="名著类"; System.out.println("类别="+myBook1.category); myBook1.read(); myBook1.print(); } }