我是Java的新手,当时我用Java创建了一系列对象。
例如,我有A类
A[] arr = new A[4];
但这只是创建指向A的指针(引用),而不是4个对象。它是否正确?我看到当我尝试访问创建的对象中的函数/变量时,出现空指针异常。为了能够操作/访问对象,我必须这样做
A[] arr = new A[4];
for( int i=0; i<4; i++ )
arr[i] = new A();
这是正确的还是我做错了什么?如果这是正确的,那真的很奇怪。
编辑:我觉得这很奇怪,因为在C ++中,你只是说新的A [4],它创建了四个对象。
这是对的。
A[] a = new A[4];
创建4个A引用,类似于执行此操作
A a1;
A a2;
A a3;
A a4;
现在,如果不将a1分配为,就无法执行a1.someMethod()
a1 = new A();
类似地,你需要使用数组
a[0] = new A();
在使用它之前。
我需要创建一个对象(银行),其中包含一组客户端和bankID。我的问题是,我不知道如何在主函数中创建银行。 银行类别: 客户端类: 主要类别: 这些是问题所在: 你必须创建一个程序来模拟银行活动。该系统包括以下模块:银行—客户(客户数组)— idBank(字符串)5 BancAccount — accountNumber(字符串)—金额(浮点)客户—姓名(字符串)—地址(字符串)—账户(银行账户数
问题内容: 我正在尝试将由IP地址或名称指定的地址(都以String(即或))转换为 InetAdress 对象。没有构造函数,而是返回 InetAddress的 静态方法。因此,如果我获得了主机名,这不是问题,但是如果获得IP地址该怎么办?有一种方法可以获取 byte [], 但是我不确定这对我有什么帮助。所有其他方法均获取主机名。 InetAddress API文档 问题答案: 您应该可以使用
问题内容: 我的经验表明,使用Java创建对象非常缓慢。通常,我只通过删除对象创建并重复使用相同的对象来优化代码。 我想知道它在基于OOP的其他语言中是否同样慢,因为对我而言,以硬性面向对象的语言花费大量时间来创建对象是非常直观的。 有人在几种语言上对此进行了介绍吗? 问题答案: 尝试看看您从中得到了什么-进行一些练习以尝试使VM无法优化循环: 我有 创建4000000个对象耗时678毫秒 每个对
主要内容:显式创建对象,隐含创建对象对象是对类的实例化。对象具有状态和行为,变量用来表明对象的状态,方法表明对象所具有的行为。 Java 对象的生命周期包括创建、使用和清除,本文详细介绍对象的创建,在 Java 语言中创建对象分显式创建与隐含创建两种情况。 显式创建对象 对象的显式创建方式有 4 种。 1. 使用 new 关键字创建对象 这是常用的创建对象的方法,语法格式如下: 2. 调用 java.lang.Class 或者 ja
问题内容: 我一直试图创建一个包含两个值的类的数组,但是当我尝试将值应用于该数组时,我得到了。 为什么会出现此异常,我该如何解决? 问题答案: 你创建了数组,但未在其中放置任何内容,因此你有一个包含5个元素的数组,所有元素均为null。你可以添加 在设置的行之前。
我试图创建一个由子类定义的对象数组(我认为这是正确的术语)。我可以看到这个问题反复出现,但实现仍然存在问题。 我的代码 给出错误 线程“main”java.lang.NullPointerException中出现异常。 为了使其合理化,我将其分解为最简单的术语: 这似乎奏效了。我只是看不出我的两个例子有什么不同。我知道我的第一个没有意义,但是MyClass最终会包含更多的数据。) 我很肯定这个问题