对象的创建和使用
int i=10;//int是基本数据类型 i是变量名 10是int类型的字面值
Student s=new Student();//new Student()它在堆内存中创建空间,只有创建了对象才能访问属性,s是局部变量在栈内存中创建空间,s同时是一个引用指向了堆内存中的对象
s.no();//访问实例变量的语法格式:引用.变量名 (读取数据)引用.变量=值 (修改数据)
注意:
在一个类体中方法体外那就是成员变量
通过类实例化对象所以叫实例变量
同时必须创建对象才能使用属性那么就是对象变量
局部变量在栈内存中存储
成员变量之实例变量在堆内存的java内部存储
实例变量一个java对象有一份
属性必须有对象才能访问所以是队形级别的变量 不能通过类名点的方式访问只能先创建再访问,先创建的时候对象的时候就是在堆内存中创建一块内存空间, 栈内存中的 变量名 引用指向了堆内存地址。
public class User{
int no;//int是基本数据类型 no是实例变量
String name;//String是引用数据类型 那么name是实例变量同时也是引用
Address address;//Address是引用数据类型,那么是实例变量address同时也是引用
}
====================
public class Address
{
String city;
String street;
String postal;
}
public class User
{
int no;
String name;
Address addr;
}
public class OOTest03
{
public static void main(String[] agrs){
User u =new User();
Address a=new Address();
u.addr=a;
System.out.println(u.addr.city);//null
a.city="hd";
System.out.println(u.addr.city);//null
}
}

public class Husband
{
String name;
Wife w;
}
public class Wife{
String name;
Husband h;
}
public class OOTest04
{
public static void main(String[] args){
Husband husband=new Husband();
husband.name="huangxioaming";
Wife wife=new Wife();
wife.name="bady1";
husband.w=wife;
wife.h=husband;
System.out.println(wife.h.name);
System.out.println(husband.name);
}
}

public class OOTest05
{
public static void main(String[] args){
Computer computer=new Computer();
Student student=new Student();
student.c=computer;
System.out.println(student.c.brand);
}
}
public class Computer
{
String model;
String color;
String brand;
}
public class Student
{
int stuNo;
String name;
Computer c;
}
==================
public class OOTest06
{
public static void main(String[] args){
Ren ren=new Ren();
ren.name="zhangsan";
BieShu fangzi=new BieShu();
ren.b=fangzi;
System.out.println(ren.name);
}
}
public class Ren
{
String name;
BieShu b;
}
public class BieShu
{
Ren z;
}

浙公网安备 33010602011771号