java中内部类和异常类
2014-03-29 22:24
351 查看
这是在eclipse中创建的一个Example8_2的类,其中有些错误,我想在这里注明一下。只是想以后自己看看,希望不要在出现这样的错误。
package s8_2;
/**
* @author Administrator
*本节主要是讲内部类和异常类
*/
/*
* 内部类主要是在以一个类里申明的一个类,内部类外面的类叫做外嵌类是叫其特点是:在内部类里外嵌类的成员变量和方法都有效
* 但是不可以申明类变量和类方法。
*
*/
class RedCowForm{
String fortName;
RedCow cow; //这是内部类生命的变量
RedCowForm(){}//构造方法
public RedCowForm(String s) {//带参数的构造方法
cow =new RedCow (150,115,5000);
fortName =s;
}
void showCowName(){//在外嵌类的方法中调用内部类的方法。
cow.speak();
}
class RedCow{
//这是内部 类
String cowName="红牛";
int height,weight,price;
RedCow(int h ,int w ,int p ){
height =h;
weight=w;
price=p;
}
void speak(){
System.out.println("偶是"+cowName+",身高:"+height+",体重:"+",价格:"+price);
}
}
}
public class Example8_2 {
public static void main(String[] args) {
// TODO 自动生成的方法存根
RedCowForm form=new RedCowForm();
form.showCowName();//使用外嵌类创建的对象只能使用外嵌类的成员方法,用该方法调用内部累的方法。
}
}
结果:Exception in thread "main" java.lang.NullPointerException
at s8_2.RedCowForm.showCowName(Example8_2.java:39)
at s8_2.Example8_2.main(Example8_2.java:49)
为什么出现这样的结果,因为是 RedCowForm form=new RedCowForm();少了参数,调用form.showCowName();方法时,cow没有创建,只是申明了,所以调用时出错了.加上去后就对了。
public class Example8_2 {
public static void main(String[] args) {
// TODO 自动生成的方法存根
RedCowForm form=new RedCowForm("xxxx");
form.showCowName();//使用外嵌类创建的对象只能使用外嵌类的成员方法,用该方法调用内部累的方法。
}
}
package s8_2;
/**
* @author Administrator
*本节主要是讲内部类和异常类
*/
/*
* 内部类主要是在以一个类里申明的一个类,内部类外面的类叫做外嵌类是叫其特点是:在内部类里外嵌类的成员变量和方法都有效
* 但是不可以申明类变量和类方法。
*
*/
class RedCowForm{
String fortName;
RedCow cow; //这是内部类生命的变量
RedCowForm(){}//构造方法
public RedCowForm(String s) {//带参数的构造方法
cow =new RedCow (150,115,5000);
fortName =s;
}
void showCowName(){//在外嵌类的方法中调用内部类的方法。
cow.speak();
}
class RedCow{
//这是内部 类
String cowName="红牛";
int height,weight,price;
RedCow(int h ,int w ,int p ){
height =h;
weight=w;
price=p;
}
void speak(){
System.out.println("偶是"+cowName+",身高:"+height+",体重:"+",价格:"+price);
}
}
}
public class Example8_2 {
public static void main(String[] args) {
// TODO 自动生成的方法存根
RedCowForm form=new RedCowForm();
form.showCowName();//使用外嵌类创建的对象只能使用外嵌类的成员方法,用该方法调用内部累的方法。
}
}
结果:Exception in thread "main" java.lang.NullPointerException
at s8_2.RedCowForm.showCowName(Example8_2.java:39)
at s8_2.Example8_2.main(Example8_2.java:49)
为什么出现这样的结果,因为是 RedCowForm form=new RedCowForm();少了参数,调用form.showCowName();方法时,cow没有创建,只是申明了,所以调用时出错了.加上去后就对了。
public class Example8_2 {
public static void main(String[] args) {
// TODO 自动生成的方法存根
RedCowForm form=new RedCowForm("xxxx");
form.showCowName();//使用外嵌类创建的对象只能使用外嵌类的成员方法,用该方法调用内部累的方法。
}
}
相关文章推荐
- java 程序的性能分析
- java 类的初始化
- Java中CallBack的理解
- java String转化成byte或byte[]
- MyEclipse8.6——BIRT报表开发…
- spring面向切面编程详解
- Spring整合开发---Struts 2(注解…
- 浅析Struts 1.2
- Struts 2 框架解析
- Struts2中Json格式异步数据交…
- 奥斯科技-开发类似于struts1.2的简…
- Java内省机制
- Java Web 中的监听(Listener)
- 在Java JDBC 中使用slf4…
- Java中的代理
- Nio学习1——基础名词:同步,异步,阻塞,非阻塞,以及java的nio,aio
- Java形参与实参题目
- java项目开发经验总结,值得收藏!绝对有用
- java项目开发经验总结,值得收藏!绝对有用
- java项目开发经验总结,值得收藏!绝对有用