错题1
有如下类定义,下列描述错误的是?
class A(object):
pass
class B(A):
pass
b = B()
A. isinstance(b, A) == True
B.isinstance(b, object) == True
C.issubclass(B, A) == True
D.issubclass(b, B) == True
我的答案:C
正确答案:D
题目解析:本题考查类(class)的相关知识。
(1)分析:
新式类:class 类(object基类)
继承类:class 子类(父类1[,父类2,父类3])#在继承元组中列了一个以上的类,那么它就被称作"多重继承"
class A(object):#新式类,相当于A继承object基类
pass
class B(A):#B类继承A类
pass
b = B()#实例化
总结:A继承object基类,B继承A类,b是B的实例
(2)知识点:
isinstance(object,classinfo),用于判断object是否是classinfo的一个实例,或者object是否是classinfo类的子类的一个实例,如果是返回True.
记忆方法:isinstance中的instance即实例,is则代表判断。
issubclass(class,classinfo),用于判断class是否是classinfo类的子类,如果是返回True.
记忆方法:issubclass中的subclass即子类,is则代表判断。
(3)英语技能扩展:
- class object:类对象
- parent-class/superclass:父类
- subclass:子类
错题2
从运行层面上来看,从四个选项选出不同的一个。
A.JAVA
B.Python
C.objectC
D.C#
我的答案:C
正确答案:B
题目解析:本题考察编程语言的分类。
(1)分析:
题目中所列的语言中只有Python是动态语言
(2)知识点:
动态语言的定义:动态编程语言是高级程序设计语言的一个类别,在计算机科学领域已被广泛应用。它是一类 在 运行时可以改变其结构的语言 :例如新的函数、对象、甚至代码可以被引进,已有的函数可以被删除或是其他结构上的变化。动态语言目前非常具有活力。众所周知的 ECMAScript ( JavaScript )便是一个动态语言,除此之外如 PHP 、 Ruby 、 Python 等也都属于动态语言,而 C 、 C++ 等语言则不属于动态语言。脚本语言/动态语言
下面这一个图表可以帮助你更好的理解
(3)英语技能扩展:
- strong:强类型
- weak:弱类型
- dynamic:动态的
- static:静态的
- formal language:形式语言
- low-level language:低级语言
- high-level language:高级语言
小结:
通过练习题目真的可以涨知识,用一个表情来形容一下我现在的感受吧。
明天继续练习哦。如果你发现小新的文章中有不合适的地方,请私信我哦!