萌新小白:java中一个类可以作为对象,而变量是对象的属性,那么变量是否可以直接作为对象?

萌新小白,还望各路大神求助,java中一个类可以作为对象,而变量是对象的属性,那么变量是否可以直接作为对象?最好打一下代码,拜谢各路大神

8个回答

1.类是一种抽象的概念,而对象是类的具体化。如类是水果,那么对象就可以是苹果,也可以是香蕉等等水果类型的。在术语上讲,对象是类的实例,如果类的名称定义为Fruits,那么对象就是new Fruits();
2.对象的属性分为成员变量属性和成员函数属性,他们是对象中的一部分,不可直接作为对象,但可以通过转换变成对象中的一部分。例如:以下的是类:
public Class Fruits{ //类

private String name; //成员变量属性

public Fruits(){ //无参构造对象函数

}

public Fruits(String name){ ////有参构造对象函数

 this.name = name ; 

}

 public static void main(String[] args) {
    Fruits fruits1 = new Fruits(); //无参构造对象
            String name = "小明"; //定义外部属性,作为构造对象中的一部分
            Fruits fruits2 = new Fruits(name); //有参构造生成对象

}

}

什么叫类可以作为对象?抛开反射的时候将类的元数据Class作为对象,类并不可以作为对象。是类的实例可以作为对象。
class A
{
}
main()
{
A a = new A(); //A是类,a才是对象
}
对象本身也可以作为变量
比如
class B
{
public A a;
}
这里的a是A类型的对象,也是B这个类的成员
B b = new B();
b.a = new A(); // B.a这个变量,也是A对象类型的变量

weixin_43944282
weixin_43944282 回复: 而且,类实例化后是对象,A a = new A(); //A是类,a才是对象他是操纵这个引用作为对象,改写类吗?
11 个月之前 回复
weixin_43944282
weixin_43944282 额,,大神您说的:抛开反射的时候将类的元数据Class作为对象没明白,是class.forName("类名").newInstance,相当于动态创建new吗?
11 个月之前 回复

好好看看基础吧,基本的概念都没搞清楚。

简单点就是java有两种数据类型,分为基本类型和引用类型。这个引用类型的实例可以称作你说的对象。

java里面一切皆对象,

题主说的一个变量指的是什么?int?float?

如果是这种基础类型的话,,题主可以去了解下自动拆装箱机制
这些基础类型看起来是基础类型,实际上对外使用会被包装成对象

所以java中一切皆对象是有道理滴

变量可以直接作为对象的

可以

public class A {
    private String str; // 这时候String 本来就一个对象 , 而它现在作为 A 类的 一个变量属性
}
public class B {
    private A a; // 这样写 也是可以的
}

基础问题,反而不容易解释,一旦明白了就只需意会而不需要言传了。
人类是一个类(抽象的概念,描述人类具有的普遍属性,有身高,体重,爱好,语言能力)
小明同学(人类的一个具体实列,即对象,有他特定的身高180,体重150,爱好音乐,语言能力精通阿拉伯语)

变量一定是某种类型的变量,如果是基本类型,如整数,使用前不需要显示实例化(编译和连接过程自动完成);如果是类类型,如人类,
使用前通常需要显示实例化。那么变量是否对象?是,简单或复合的对象。

有些语言号称一切皆是对象,似乎把技术问题上升到了哲学层面,感觉有些怪异。

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问