简述Java中final关键字的三种用法。
(1)final在类之前,表示该类是最终类,表示该类不能再被继承。
(2)final在方法之前,表示该类方法是最终方法,该方法不能被任何派生的子类覆盖。
(3)final在变量之前,表示变量的值在初始化之后就不能再改变,相当于定义了一个常量。
简述类变量和实例变量的区别。
(1)不同对象的实例变量将分配不同的内存空间,实例变量则属性独有,改变某一个对象的值不影响其他对象;而所有对象的类变量占用同一块内存空间,类变量是所有对象共有的,改变其中一个对象的值,其他对象得到的就是改变后的结果。
(2)类变量在类被加载到内存时就为其分配内存空间,而实例变量在使用new创建对象时,才为其分配内存空间。
(3)类变量可以通过对象和类名访问,而实例变量只能通过对象访问。(4)类变量通过static
关键字修饰,实例变量不需要。
什么时候为类中的实例变量分配内存空间?
在使用类创建实例对象时会为其分配空间。(通过new关键字和构造函数为其实例化的时候。)
什么叫方法的重载?构造方法可以重载吗?
(1)一个类中可以有多个方法具有相同的名称,但这些方法的参数必须不同,即或者是参数个数不同,或者是参数的类型不同,或者是参数的顺序不同。
(2)构造方法可以重载,而且构造方法的重载是方法中使用频率最高的一种。
什么是继承?
(1)继承性是面向对象程序设计语言的另一种基本特征,通过继承可以实现代码的重用。
(2)继承而得到的类为子类,被继承的类为父类,父类包括所有直接或间接被继承的类。
(3)子类可继承父类中的变量及方法,也可定义其自身特有的变量及方法。
(4)Java中不支持多重继承。
什么是抽象类?抽象类有什么特点?
(1)使用abstract修饰的类叫抽象类。
(2)特点:抽象类必须被继承,抽象类不能直接实例化,它只能作为其他类的超类,这一点与最终类(final类)正好相反。
如何使用this关键字?
this指向自己的引用,即当前方法所在的对象。它的一个主要作用是要将自己这个对象当作参数,传递给别的对象中的方法。或者在类定义时使用this来引用自己的属性或方法。
Java中super关键字的作用是什么?
(1)调用构造函数方法:super()是子类构造函数第一个执行的语句,如果super()没有被用到,每个超类的默认的或无参数的构造函数将被执行。
(2)调用被隐藏变量及方法:可通过super关键字调用被隐藏的父类中的变量及方法。
访问控制里面四个关键字是什么?简要说四者的访问权限关系。
(1)Public:任何其他类,对象只要可以看到这个类的话,那么它就可以存取变量的数据或使用方法。
(2)Protected:同一类,同一包的类要使用,必须是该类的子类。
(3)Private:不允许任何其他类存取和调用。(4)Friendly(default,前边没有修饰符的情况):在同一程序包中出现才可以直接使用它的数据和方法。
解释类和对象的关系是什么?
类定义了一种新的数据类型,可以用新类型来创建该类型的对象。类(class)是对象(object)的模板,而对象是类的一个实例。
类方法与实例方法的区别是什么?
类加载时,类方法被分配入口地址;实例方法是在第一个对象创建时被分配入口地址。类方法一般通过类名来调用,类方法中不能使用this关键字,因为this代表当前对象,类方法是在类加载时就存在而此时对象还不存在。
定义一个类需要包含什么元素?
一个类包含属性和方法。该类具有哪些特征使用属性表示,该类具有哪些行为使用方法来表示。
选择&判断
Java语言中,字符变量以char类型表示,它在内存中占(2字节)
Java语言规定,程序绘图区域的坐标原点位于整个区域的(左下角)
设x=1,y=2,z=3,则表达式y+=z--/++x的值是(3)
不允许作为类及类成员的访问控制符是(private)
下列选项中,不属于Java语言特点的是(函数定义)
Applet运行时,被浏览器或appletviewer
调用的第一个方法是(init()
)
浏览器中调用Java Applet小程序时,首先要调用的Applet类的方法是(init()
)
在浏览器中执行applet程序,以下选项中的哪个方法将被最先执行(start()
)
在以下四个整数中,能作为线程最低优先级的整数是(1)
抽象方法一定没有方法体。(错误)
如果类A继承和扩展类B,则子类A和超类B之间的关系是实现。(错误)
将容器分成若干行和若干列的布局是CardLayout
。(错误)(GridLayout
)