日期:2014-05-20  浏览次数:20674 次

一道蛋疼的选择题 ?? 求解?? 类 和对象
在java中,关于类的描述错误的是()
A.类是对象的抽象
B.类中定义属性和方法
C.定义类的关键字为Class
D.对象是类的实例

请做完的 大大们 告诉我 为什么 选那一项???
------最佳解决方案--------------------
选C,定义类的关键字为class,而不是Class,c不能大写!
A选项,类是对象的抽象,对象是类的实例。
B选项,类中定义属性和方法,这就是类,面向对象的基本思想。
D选项,如A,对象是类的实例。举例如下:
A a = new A();
A为类,a为对象,A是一种抽象,它可以有多个实例,如:
A b = new A();
所以,A和D你应该明白了吧?
------其他解决方案--------------------
选C:
类,就是一类事物的抽象,而这些事物就是对象。所以说类就是一个模板,不能做任何实际的工作。但是类可以产生一个个功能相似的实体,就是对象,对象就是类的实例化。
定义类时用的是class xxxx
而Class 在API中是一个类

java.lang 
类 Class<T>
java.lang.Object
  java.lang.Class<T>
类型参数:
T - 由此 Class 对象建模的类的类型。例如,String.class 的类型是 Class<String>。如果将被建模的类未知,则使用 Class<?>。
所有已实现的接口: 
Serializable, AnnotatedElement, GenericDeclaration, Type 

--------------------------------------------

public final class Class<T>extends Objectimplements Serializable, GenericDeclaration, Type, AnnotatedElementClass 类的实例表示正在运行的 Java 应用程序中的类和接口。枚举是一种类,注释是一种接口。每个数组属于被映射为 Class 对象的一个类,所有具有相同元素类型和维数的数组都共享该 Class 对象。基本的 Java 类型(boolean、byte、char、short、int、long、float 和 double)和关键字 void 也表示为 Class 对象。 

Class 没有公共构造方法。Class 对象是在加载类时由 Java 虚拟机以及通过调用类加载器中的 defineClass 方法自动构造的。 

以下示例使用 Class 对象来显示对象的类名: 


     void printClassName(Object obj) {
         System.out.println("The class of " + obj +
                            " is " + obj.getClass().getName());
     }
 还可以使用一个类字面值(JLS Section 15.8.2)来获取指定类型(或 void)的 Class 对象。例如: 


     System.out.println("The name of class Foo is: "+Foo.class.getName());
 

------其他解决方案--------------------
我选 A ,实在不敢苟同A的话法,
对象的抽象指的是啥,完全胡扯。

------其他解决方案--------------------
顶1楼,Class是类的类的关键词
------其他解决方案--------------------
肯定选c啊,,
------其他解决方案--------------------
类不就是对象的抽象吗,任何一本书都有类似的叙述,从现实中抽象出类,每个类的对象则是他的实例化。
------其他解决方案--------------------
表示不懂
------其他解决方案--------------------
一楼说的对。。
------其他解决方案--------------------
不看其他三项就知道选C,要注意大小写,class是关键字,而Class则是实实在在一个类,用于反射中。我确定!
------其他解决方案--------------------
引用:
选C,定义类的关键字为class,而不是Class,c不能大写!
A选项,类是对象的抽象,对象是类的实例。
B选项,类中定义属性和方法,这就是类,面向对象的基本思想。
D选项,如A,对象是类的实例。举例如下:
A a = new A();
A为类,a为对象,A是一种抽象,它可以有多个实例,如:
A b = new A();
所以,A和D你应该明白了吧?
  ……


+1
------其他解决方案--------------------