Java学习笔记---6.面向对象编程01-类对象的构建及对象的引用传递
Java与C++不同,Java是一种纯粹的面向对象语言. 面向对象有三大特点,继承(Inheritance)、封装(Encapsulation)、多态(Polymorpism).
这一部分内容比较多,分开来学. 01部分主要以一个例子来熟悉一下Java类对象的构建过程. 这里有一点需要谨记: Java中类对象的传递是引用传递.
举例如下:
view plaincopy to clipboardprint?
class Person
{
// 定义类"Person"的属性
String name;
int age;
// 定义类"Person"的方法
void say()
{
System.out.println("我的名字是: " + name + ", 我的年龄是: " + age);
}
}
public class OODemo01
{
public static void main(String args[])
{
//声明对象:在栈内存中声明;类名称 对象名称 = null ;
//实例化对象:使用new在堆内存中开辟空间,保存对象属性;对象名称 = new 类名称() ;
Person p = new Person();
// 通过对象.属性,给实例化后的对象设置属性
p.name = "张三";
p.age = 23;
// 通过对象.方法,调用对象的方法
p.say();
}
}
class Person
{
// 定义类"Person"的属性
String name;
int age;
// 定义类"Person"的方法
void say()
{
System.out.println("我的名字是: " + name + ", 我的年龄是: " + age);
}
}
public class OODemo01
{
public static void main(String args[])
{
//声明对象:在栈内存中声明;类名称 对象名称 = null ;
//实例化对象:使用new在堆内存中开辟空间,保存对象属性;对象名称 = new 类名称() ;
Person p = new Person();
// 通过对象.属性,给实例化后的对象设置属性
p.name = "张三";
p.age = 23;
// 通过对象.方法,调用对象的方法
p.say();
}
}
在例子中定义了一个Person类. 在主方法中,要使用person类对象的话,就必须声明并实例化一个Person的对象. 声明对象是分配在栈内存中. 实例化对象采取的是 new 类名称()的语法, 在堆内存中开辟空间. 栈内存中分配好的对象以引用形式来操作堆内存数据. 这一点很重要,需要理解通透.
上面的对象构建过程可以以下图表示,通过下图可以更好的理解何为对象的引用传递.