码迷,mamicode.com
首页 > 其他好文 > 详细

匿名对象

时间:2016-05-20 23:36:48      阅读:267      评论:0      收藏:0      [点我收藏+]

标签:

(1)匿名对象分析:
普通申明一个对象是这样的
A a = new A();
那么这个时候a就是类A的一个对象,这个对象名字就是a
再来看下面一个例子:
method(A a);
整理method是一个方法,他需要传递一个对象来作为参数,那么这个时候有2种方法:
方法1:
A a =new A();
method (a);
方法2:
method (new A());
(2)匿名对象详细:
1,所谓的匿名对象就是比之前的对象少一个栈内存的引用关系。
2,只使用一次的对象,称为匿名对象。
3,匿名对象只在堆内存中开辟空间,而不在栈空间中开辟空间。(声明的对象在栈内存中开辟空间)
例子2:

class Person{
private String name ;
private int age ;
public Person(String n,int a){ // 声明构造方法,为类中的属性初始化
this.setName(n) ;
this.setAge(a) ;
}
public void setName(String n){
name = n ;
}
public void setAge(int a){
if(a>0&&a<150){
age = a ;
}
}
public String getName(){
return name ;
}
public int getAge(){
return age ;
}
public void tell(){
System.out.println("姓名:" + this.getName() + ";年龄:" + this.getAge()) ;
}
};
public class NonameDemo01{
public static void main(String args[]){
new Person("张三",30).tell() ;//这里通过一个new类(),事实上也实现了一个分配堆内存的操作,实现了一个匿名对象的分配。

//new Person("张三",30).tell() 的功能等于Person p=new Person("张三",30).tell() ;
}
};

匿名对象

标签:

原文地址:http://www.cnblogs.com/alsf/p/5513570.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!