3、类和对象的定义格式

在Java中可以使用以下语句定义一个类:

class 类名称
{
	属性名称;
	返回值类型 方法名称()
	{
		
	}
}

 

对象的定义:

一个类想要真正的进行操作,则必须依靠对象,对象的定义格式如下:

类名称 对象名称 = new 类名称();

按照以上格式就可以产生对象了。

 

如果想要访问类中的属性或方法(方法的定义),则可以依靠以下语法形式:

//访问类中的属性
对象.属性;
//调用类中的方法
对象.方法();
//上面的.可以理解为中文的“的”

我们来举个例子:

public class a
{
	public static void main(String[] args)
	{
		
	}
}

//自定义一个类(类型)
class Horse
{
	//在类中定义属性
	String name;
	int age;
	public void run()
	{
		System.out.println("我是"+name+",我"+age+"岁了,我能日行千里!");
	}
}

此时我们定义了一个类叫Horse,但在主函数中没有调用,所以没有输出。

public class a
{
	public static void main(String[] args)
	{
		Horse h = null;//此时把Horse拉进主函数中,但内存还没有创建。
		
		h = new Horse();//这时候h就在主函数里有了Horse对象,别忘加括号
		
		//有了对象,我们就可以调用对象的属性和方法
		 = "赤兔马";
		h.age = 5;
		
		//调用方法,那么方法就会被执行
		h.run();
		h.eat();
		
		//匿名对象:只能使用一次,用完后该对象被释放
		new Horse().eat();
		
		h = null;
		//h.eat();//当次h==null时,h现在不存在了使用该对象的属性或方法将报错(空指针)
	}
}

//自定义一个类(类型)
class Horse
{
	//在类中定义属性
	String name;//注意,String也是一个引用类型变量,不是基本数据类型变量
	int age;
	public void run()
	{
		System.out.println("我是"+name+",我"+age+"岁了,我能日行千里!");
	}
	public void eat()
	{
		System.out.println("我吃仙草,还吃很多!");
	}
}
/*结果:
我是赤兔马,我5岁了,我能日行千里!
我吃仙草,还吃很多!
我吃仙草,还吃很多!
*/

上面把Horse这个类调入main函数,就可以运行了。

4、对象内存分析

1、new关键字表示创建一个对象

2、new关键字表示实例化对象

3、new关键字表示申请内存空间

 

注意:如果使用一个没有申请内存空间的对象,会报指针异常:java.lang.NullPointerException