Noob,有一些关于Java基本知识的问题。
如果我们有一个带有构造函数(也是Person)的类Person
,我们可以像这样创建一个引用变量:
Person johnny = new Person();
我们说我们刚刚在课程People
中创建了一个对象johnny
。
它拥有一个"地址"保留对象及其值的位置,与基元类型的对象不同(例如,int x = 5;值为5,johnny
是"链接"到值 - 如果我&# 39;正确理解事物。)
第一个字: Person
是一个类/类型(< - 在这里编辑),但是:
第二个字: johnny
是Person类型的引用变量。
- 如果我遗失了什么,请赐教:)
第三个字: new
这只是说明我们正在创建新对象。
第四个字:第二个Person
:
ALSO:
new Person
?最后:多态性。
因此,如果我们有一个子类Adult
,它扩展了超类Person
,那么我们可以这样做:
Person amanda = new Adult();
amanda
是什么,并引用班级Adult
中的对象?感谢您的帮助:)
答案 0 :(得分:-1)
第一个字:'人物'是类类型
是的,但它可能也是一种原始类型,对此并不重要"第一个字"这是变量的类型声明。
另一个例子是
int a = 1;
在Java中声明变量或参数时,名称前面带有类型。
第二个字:' johnny'是Person类型的引用变量
那是对的。您在此处命名变量johnny
。它的类型就是你在名字前面指定的类型。
第三个字:' new'这只是表明我们正在创建新对象。
new
表示我们正在调用一个构造函数(跟随new
的类)。这确实是你用Java创建对象的方式。
第四个字:第二个'人
这是您正在调用构造函数的类的名称。这将始终返回该类(不是子类)的新实例。对于给定的类,可以有多个构造函数可供选择,它们由参数计数和类型区分(在您的情况下,是一个没有任何参数的构造函数)。
变量引用的值(地址)是等号后的所有内容吗?地址是“新人”?
new Person()
返回对新创建的对象实例的引用。它将存储在您的变量johnny
。
最后:多态性。
您的Adult
类是Person
的子类。这意味着您可以在需要Person
的所有情况下使用它。特别是,您可以将其分配给Person
- 类型变量(例如johnny
)并在其上调用所有Person
方法。
答案 1 :(得分:-1)
对于单词来说,这太混乱了。
创建引用类型时,我们到底在做什么?
无。 Java中没有这样的操作。
当我们有一个类(或超类,我会回到那个)具有构造函数(也是Person)的人时,我们可以创建这样的引用类型:
不,你不能。你在这里创建的是一个引用。你不创建一个类型,更不用说引用类型'。
Person johnny = new Person();
我们刚刚在一个新类中创建了People(例如)一个对象johnny。
我没有看到班级People
的证据,但我会接受你的话。
它拥有一个"地址"保留对象及其值的位置,与基元类型的对象不同(例如,int x = 5;值为5,johnny是"链接"值 - 如果我已经理解了事情正确。)
正确。
1st word: 'Person' is a class type, but:
不,不是。 Person
是一个班级。周期。
班级类型有什么作用?它需要什么?
没有,因为它不存在。另一方面,类是一种用于构造对象的模板,用于确定其数据成员以及可以在其上调用的代码。
也许:一个类型做什么,如果它不是原始类型'?
它通过继承,接口实现和Liskov替换原则(q.v.)以可以推理和计算的方式将类型系统扩展到原始类型之外。
第二个字:' johnny'是Person类型的引用变量。 - 如果我遗失了什么,请赐教:)
正确。
第三个字:' new'这只是表明我们正在创建新对象。
正确。
第四个字:第二个Person
:这是我们正在创建的对象吗?
这是我们正在创建的对象的类(或'类型'如果你坚持的话)。
这是我们所指的构造函数或类吗?
两者。它们的参数或缺乏决定了哪个构造函数被调用。根据Java的规则,构造函数的名称与类的名称相同。
变量引用的值(地址)是等号后的所有内容吗?地址是“新人”?
变量指的是创建的对象。没有'地址'的概念。在Java。
最后:多态性。因此,如果我们有一个子类' Adult',它扩展了超级班级的人员,那么我们可以这样做:
Person amanda = new Adult();
我们现在在做什么?
您正在创建类型为Adult
的对象,并通过Person
类型的引用引用它,只有Person
是基类或由Adult
。
' amanda'类类型人物
'阿曼达'是类型/类Person
的引用。
和班级中的一个对象'成人'?
amanda
根本不是一个对象。它引用的对象是类Adult
的对象。