java对象——new对象的理解

学了好长时间的java对于java中的对象一直没有理清楚,今天楼主对java中的对象进行了整理,希望对大家有帮助。

    理解和使用java中的对象,我们首先了解一下构造方法与对象的创建。  类是面向对象语言中最重要的一种数据,可以用类声明变量。面向对象语言中,用类声明的变量称为对象。

和基本数据类型不同,在声明对象后,还必须创建对象,即为声明的对象分配所拥有的的变量(确定对象所具有的属性),当时使用一个类创建一个对象时,也叫给出了这个类的一个实例。通俗的讲,类是创建对象的模板。



1. 构造方法

构造方法是类中的一种特殊方法,用类创建对象时需要使用它的构造方法,类中的构造方法必须和它所在类的名字完全相同,且没有类型。
class Person 
{
	int age;
	String name;

	Person(){
		
	}
}
在Person类中Person()是一个构造函数,其实这个方法是被java隐藏的,也就是说如果类中没有编写构造方法,系统会默认该类有一个无参数,且方法体中没有语句的构造函数。如Person类中的Person(){ },如果类里定义了一个或多个构造函数,那么java就不提供默认的构造方法了。如下:
class Person 
{
	int age;
	String name;

	Person(){
		age=22;
		name="刘德华";
	}

	Person(int age,Stirng name){
		System.out.println("the man age is"+age+"name: "+name);
	}
}

2 创建对象

(1)对象声明
一般格式为:
类的名字   对象的名字;
如:
Person person;

(2)为声明的对象分配变量
1.使用new运算符和类的默认构造方法为声明的对象分配变量,即创建对象。
class Person 
{
	int age;
	String name;
	void speak(String name){
		System.out.println(name);
	}
}
public class OuXiang
{
	public static void main(String[] args) {
		Person liudehua;			//声明对象
		liudehua=new Person();	//为变量分配变量(使用new和默认的构造方法)
	}
}

         2.使用new运算符和类的构造方法为声明的对象分配变量,即创建对象。
class Person 
{
	int age;
	String name;

	Person(int age,Stirng name){
		System.out.println("the man age is"+age+"name: "+name);
	}

	void speak(String name){
		System.out.println(name);
	}
}
public class OuXiang
{
	public static void main(String[] args) {
		Person liudehua;			//声明对象
		liudehua=new Person(53,"刘德华");	//为变量分配变量(使用new和类中的构造方法)
	}
}


3 对象的内存模型

当用Person类声明变量liudehua,即对象liudehua时,Person liudehua; 内存模型如下
liudehua
null

声明变量后,liudehua的内存中还没有任何数据,这时的liudehua还是一个空对象,对象还不能使用,因为他还没有实体,必须为之分配变量,即为对象分配实体。
liudehua=new Person(53,"刘德华"); 此时就为对象分配了变量。
new运算符为变量age,name分配内存后,将返回一个引用给对象变量liudehua,也就是返回上图中0xAC12(相当于一个身份id)该引用包含代表着成员变量内存位置及相关重要信息。

  • 32
    点赞
  • 89
    收藏
    觉得还不错? 一键收藏
  • 5
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值