空指针异常 怎么办

qq_35983245 2017-04-08 10:02:38

...全文
218 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
seven_day2016 2017-04-08
  • 打赏
  • 举报
回复
sudent类的引用没有实例化,所以你就没法直接用l.loan()调方法
LateCHI 2017-04-08
  • 打赏
  • 举报
回复
L没有初始化。所以报错了。
千杯不醉476 2017-04-08
  • 打赏
  • 举报
回复
主函数:

public class Borrow {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Book b1 = new Book();
		Book b2 = new Book();
		b1.setBookName("aaa");
		b2.setBookName("bbb");
		Library l = new Library();
		l.setBookArr(new Book[]{b1,b2});
		Student s = new Student();
		s.setName("lucky");
		s.setL(l);
		Book res = s.borrow("bbb");
		if(res!=null){
			System.out.println(s.getName()+":"+res.getBookName());
		}else{
			System.out.println(s.getName()+"no");
		}
	}

}
Book类:

public class Book {
	String BookName;

	public String getBookName() {
		return BookName;
	}

	public void setBookName(String bookName) {
		BookName = bookName;
	}
	
}
Student类:

public class Student {
		private String name;

		public String getName() {
			return name;
		}

		public void setName(String name) {
			this.name = name;
		}
		Library L;
		
		public Library getL() {
			return L;
		}

		public void setL(Library l) {
			L = l;
		}

		public Book borrow(String name){
			return L.load(name);
		}
}

public class Library {

	private Book[] BookArr;
	
	public Book[] getBookArr() {
		return BookArr;
	}

	public void setBookArr(Book[] bookArr) {
		BookArr = bookArr;
	}

	public Book load(String name) {
		// TODO Auto-generated method stub
		for(Book book:this.BookArr)
		if(book.getBookName().equals(name)){
			return book;
		}
		return null;
	}
}
输出结果: 总结:Library是student的属性,要在student里调用libray的方法需要setLibrary
weixin_38224089 2017-04-08
  • 打赏
  • 举报
回复
合肥-歪歪 2017-04-08
  • 打赏
  • 举报
回复
Library L =new Library (); 就行了,或者new Library ().Loan(name);

67,513

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧