Java基础对象的创建和使用02

简介: Java基础对象的创建和使用02
public class OOTest02{
  public static void main(String[] args){
    //创建User对象
    //u是局部变量
    //u是一个引用
    //u保存内存地址指向堆内存的User对象
      User u = new User();
    //输出User对象内部实例变量的值
    System.out.println(u.no);//0
    System.out.println(u.name);//null
    System.out.println(u.addr);//null
    System.out.println("========================================");
    //修改User对象内部实例变量的值
    u.no = 10;
    u.name = "jack";//"jack"是一个java对象,属于String对象
    u.addr = new Address();
    //在main方法当中目前只能看到一个引用“u”
    //一切都是只能通过u来访问
    System.out.println(u.name + "居住在哪个城市:" + u.addr.city);
    System.out.println(u.name+ "居住在哪个街道:" + u.addr.street);
    System.out.println(u.name+ "邮编:" + u.addr.zipcode);
    System.out.println("========================================");
    u.addr.city = "中国";
    u.addr.street = "花园街道";
    u.addr.zipcode = "111111111";
    System.out.println(u.name + "居住在哪个城市:" + u.addr.city);
    System.out.println(u.name+ "居住在哪个街道:" + u.addr.street);
    System.out.println(u.name+ "邮编:" + u.addr.zipcode);
  }
}
//用户类
class User{
  //属性
  //用户编号
  //int是一种基本数据类型:整数型
  //no是一个实例变量
  int no;
  //用户名
  //String是一种引用数据类型:代表字符串
  //name是一个实例变量
  //name是一个引用
  String name;
  //家庭住址
  //Address是一种引用数据类型:代表家庭住址
  //addr是一个实例变量
  //addr是一个引用
  Address addr;
}
//家庭住址类
class Address{
  //城市
  String city;
  //街道
  String street;
  //邮编
  String zipcode;
}


内存分析图:


0a2653c851af460fa595bd959398a8f1.png

相关文章
|
3天前
|
存储 Java 程序员
优化Java多线程应用:是创建Thread对象直接调用start()方法?还是用个变量调用?
这篇文章探讨了Java中两种创建和启动线程的方法,并分析了它们的区别。作者建议直接调用 `Thread` 对象的 `start()` 方法,而非保持强引用,以避免内存泄漏、简化线程生命周期管理,并减少不必要的线程控制。文章详细解释了这种方法在使用 `ThreadLocal` 时的优势,并提供了代码示例。作者洛小豆,文章来源于稀土掘金。
|
23天前
|
缓存 前端开发 Java
【前端学java】复习巩固-Java中的对象比较(15)
【8月更文挑战第11天】Java中的对象比较
25 1
【前端学java】复习巩固-Java中的对象比较(15)
|
10天前
|
存储 Java
Java编程中的对象序列化与反序列化
【8月更文挑战第28天】在Java世界中,对象序列化与反序列化是数据持久化和网络传输的关键技术。本文将深入浅出地探讨这一过程,带你领略其背后的原理及应用,让你的程序在数据的海洋中自由航行。
|
11天前
|
机器学习/深度学习 人工智能 算法
探索人工智能在医疗诊断中的应用与挑战Java编程中的对象和类:基础与实践
【8月更文挑战第27天】随着人工智能(AI)技术的飞速发展,其在医疗领域的应用日益广泛。本文深入探讨了AI技术在医疗诊断中的具体应用案例,包括图像识别、疾病预测和药物研发等方面,并分析了当前面临的主要挑战,如数据隐私、算法偏见和法规限制等。文章旨在为读者提供一个全面的视角,理解AI在改善医疗服务质量方面的潜力及其局限性。
|
16天前
|
搜索推荐 Java
揭秘Java多态背后的奥秘,探索对象们是如何做到“千人千面”的
揭秘Java多态背后的奥秘,探索对象们是如何做到“千人千面”的
32 3
|
15天前
|
存储 Java 索引
如何在 Java 中创建类对象的 Arraylist?
【8月更文挑战第23天】
24 1
|
15天前
|
存储 Java 数据格式
|
22天前
|
Java API 开发者
|
5天前
|
存储 Java
Java编程中的对象序列化与反序列化
【9月更文挑战第2天】在Java的世界里,对象序列化和反序列化就像是给数据穿上了一件隐形的斗篷。它们让数据能够轻松地穿梭于不同的系统之间,无论是跨越网络还是存储在磁盘上。本文将揭开这层神秘的面纱,带你领略序列化和反序列化的魔法,并展示如何通过代码示例来施展这一魔法。
8 0
|
7天前
|
存储 Java
Java编程中的对象和类
在Java的世界中,“对象”与“类”是构建一切的基础。就像乐高积木一样,类定义了形状和结构,而对象则是根据这些设计拼装出来的具体作品。本篇文章【8月更文挑战第31天】 将通过一个简单的例子,展示如何从零开始创建一个类,并利用它来制作我们的第一个Java对象。准备好让你的编程之旅起飞了吗?让我们一起来探索这个神奇的过程!
下一篇
DDNS