Java 梳理类,对象,继承,学习成员内部类,匿名内部类
2016-06-15 08:40
706 查看
工作内容:
一、梳理类,对象,继承,接口之间的关系
二、内部类的学习:
1.成员内部类—间接实现多继承,成员内部类的方法和属性可以用它的对象打点调用。
OuterClass.InsideClass insideClass = (new OuterClass()).new InsideClass();
2.匿名内部类—用于初始化对象属性,可以重写父类方法/实现接口方法
3.打印一个对象,默认打印的是:对象.toString()
培训讲解:
匿名内部类测试用例:
FatherClass fatherClass=new FatherClass() {
int tall1= 10;
//匿名内部类自己的方法
public void speak(){
System.out.println("Hello");
}
//重写父类方法
@Override
public void show() {
tall = 173.5;
name ="Tom";
System.out.println(tall1);
//可以调用
speak();
}
};
fatherClass.show();
//测试匿名内部类内部的属性和方法(在匿名类内部添加属性,方法,在外部是法使用的)
//外部可以使用的是从父类(接口)继承或者实现、重写的方法
//不可以调用,内部类自己的方法和属性
//fatherClass.tall1= 20;
//fatherClass.speak();
System.out.println(fatherClass.tall);
System.out.println(fatherClass.name+":"+fatherClass.tall);
}
}
//成员内部类测试
public class TestInsideClass {
public static void main(String[] args) {
MemberClass memberClass = new MemberClass();
MemberClass.InClass inClass = memberClass.new InClass();
inClass.setSpeed(200);
inClass.show();
/*
* 测试成员内部类自定义方法的使用
* 结果:成员内部类自定义的run()方法可以用内部类InClass的对象打点调用
*
* */
inClass.run();
System.out.println(inClass.getSpeed());
}
}
一、梳理类,对象,继承,接口之间的关系
二、内部类的学习:
1.成员内部类—间接实现多继承,成员内部类的方法和属性可以用它的对象打点调用。
OuterClass.InsideClass insideClass = (new OuterClass()).new InsideClass();
2.匿名内部类—用于初始化对象属性,可以重写父类方法/实现接口方法
3.打印一个对象,默认打印的是:对象.toString()
培训讲解:
匿名内部类测试用例:
FatherClass fatherClass=new FatherClass() {
int tall1= 10;
//匿名内部类自己的方法
public void speak(){
System.out.println("Hello");
}
//重写父类方法
@Override
public void show() {
tall = 173.5;
name ="Tom";
System.out.println(tall1);
//可以调用
speak();
}
};
fatherClass.show();
//测试匿名内部类内部的属性和方法(在匿名类内部添加属性,方法,在外部是法使用的)
//外部可以使用的是从父类(接口)继承或者实现、重写的方法
//不可以调用,内部类自己的方法和属性
//fatherClass.tall1= 20;
//fatherClass.speak();
System.out.println(fatherClass.tall);
System.out.println(fatherClass.name+":"+fatherClass.tall);
}
}
//成员内部类测试
public class TestInsideClass {
public static void main(String[] args) {
MemberClass memberClass = new MemberClass();
MemberClass.InClass inClass = memberClass.new InClass();
inClass.setSpeed(200);
inClass.show();
/*
* 测试成员内部类自定义方法的使用
* 结果:成员内部类自定义的run()方法可以用内部类InClass的对象打点调用
*
* */
inClass.run();
System.out.println(inClass.getSpeed());
}
}
相关文章推荐
- java垃圾回收算法之-coping复制
- Java 发送邮件
- 《java编程思想》学习笔记(二)
- 在Eclipse中运行JAVA代码远程操作HBase的示例
- Add Binary - Javacript
- java中的反射,invoke方法
- Longest Common Prefix - Javacript
- java泛型
- java异常与错误备忘
- [Java] JavaMail 简单案例
- hadoop实践(五)win10+eclipse+hadoop2.6.4 开发环境
- 关于web项目中报错java.lang.OutOfMemory的解决方法
- java比较Equals和==的区别
- Java(六) 基本API和字符串
- 20145122 《Java程序设计》课程总结
- JAVA经典试题四十道
- 如何在eclipse jee中创建Maven project并且转换为Dynamic web project
- 实例解析Java中的synchronized关键字与线程安全问题
- Eclipse 编译StanfordNLP
- Maven项目常见错误