JAVA学习笔记3
匿名对象
问题引入:如何方便快捷的调用对象的方法
在Java中对象是一系列属性和行为的集合,如果希望使用对象的方法,一般我们都对这样 对象名 实例化名=new 对象名(),在实例化对象之后再用实体对象调用方法。在今天的学习过程中我接触到了匿名对象,就是一种没有名字的对象,可以直接调用类中的方法。不需要实例化简单快捷的调用方法。
一般方法调用对象的方法
//定义一个学生对象
class Student{
public void show(){
System.out.println("学好JAVA!学好JAVA!学好JAVA!");
}
}
//此对象调用方法的参数是 学生类对象
class StudentDemo{
public void mothed(Student S){
S.show();
}
}
public class NoNameDemo {
public static void main(String[] args) {
Student s=new Student();
//通过实体对象调用方法
s.show();
}
}
2.使用匿名对象调用方法
//定义一个学生对象
class Student{
public void show(){
System.out.println("学好JAVA!学好JAVA!学好JAVA!");
}
}
//此对象调用方法的参数是 学生类对象
class StudentDemo{
public void mothed(Student S){
S.show();
}
}
public class NoNameDemo {
public static void main(String[] args) {
// Student s=new Student();
//通过实体对象调用方法
s.show();
new Student().show();
}
}
此外匿名对象还能当做参数传递
public class NoNameDemo {
public static void main(String[] args) {
// Student s=new Student();
//通过实体对象调用方法
s.show();
// new Student().show();
new StudentDemo().mothed(new Student());
}
}
匿名对象的优缺点
优点:
1.第一次使用调用具体方法是直接使用简单快捷
2.匿名对象占用堆内存使用结束后直接会被JAVA回收,不再占用内存。
缺点:
1.调用多次的时候,局限于调用一次。适用于只调用一次的场景