java编程笔试面试题
引导语:应聘技术类的岗位都是需要经过笔试考察这一个环节的,以下是小编整理的java编程笔试面试题,欢迎参考阅读!
简答题:
01、switch语句能否作用在byte上,能否作用在long上,能否作用在String上?
答:
在switch(expr1)中,expr1只能是一个整数表达式或者枚举常量(更大字体),
整数表达式可以是int基本类型或Integer包装类型,
由于,byte,short,char都可以隐含转换为int,
所以,这些类型以及这些类型的包装类型也是可以的。
显然,long和String类型都不符合switch的语法规定,
并且不能被隐式转换成int类型,
所以,它们不能作用于swtich语句中。
02、short s1 = 1; s1 = s1 + 1;有什么错?short s1 = 1; s1 += 1;有什么错?
答:
对于short s1 = 1; s1 = s1 + 1; 由于s1+1运算时会自动提升表达式的类型,
所以结果是int型,再赋值给short类型s1时,编译器将报告需要强制转换类型的错误。
对于short s1 = 1; s1 += 1;由于+= 是java语言规定的运算符,java编译器会对它进行特殊处理,因此可以正确编译。
03、简述Java中构造方法的概念及特点。
答:
构造方法:构造方法是一种特殊的方法,用于初始化对象。
特点:
① 构造方法与类同名,可以有参数,也可无参数。
② 构造方法没有返回值,在方法前也不需要写void。
③ 创建对象时,系统自动调用构造方法。
④ 用户在程序中不能直接调用构造方法,只能通过new操作符调用。
⑤ 一个类可以有多个同名构造方法,但参数必须不同。
⑥ 类中可以不定义构造方法,此时Java提供一个默认的无参数构造方法
04、简述Java中接口的概念及接口的性质?
答:
Java语言规定,类只能实现单继承,但接口可以实现多重继承。
接口中定义的方法都是抽象方法,定义的所有域都是常量。
因此接口可以看作是没有实现的`方法和常量的集合。
使用接口主要是解决Java语言不支持多重继承的问题。
性质:
① 接口不提供代码重用性。因为接口中的方法都是没有实现的方法,因此所有的方法体都要自己编写。
② 接口可以通过多继承进行扩展。
③ 接口不能升级,即提供给用户的接口不能再改变。
05、数组有没有length()这个方法? String有没有length()这个方法?
答:
数组没有length()这个方法,有length的属性。String有length()这个方法。
06、构造器Constructor是否可被override?
答:
构造器Constructor不能被继承,因此不能重写Overriding,但可以被重载Overloading。
07、启动一个线程是用run()还是start()?
答:
启动一个线程是调用start()方法,使线程所代表的虚拟处理机处于可运行状态,这意味着它可以由JVM调度并执行。
这并不意味着线程就会立即运行。
run()方法可以产生必须退出的标志来停止一个线程。
08、接口是否可继承接口? 抽象类是否可实现(implements)接口? 抽象类是否可继承实体类(concrete class)?
答:
接口可以继承接口。
抽象类可以实现(implements)接口,抽象类是否可继承实体类,但前提是实体类必须有明确的构造函数。
09、sleep() 和 wait() 有什么区别?
答:
sleep是线程类(Thread)的方法,导致此线程暂停执行指定时间,给执行机会给其他线程,但是监控状态依然保持,到时后会自动恢复。
调用sleep不会释放对象锁。
wait是Object类的方法,对此对象调用wait方法导致本线程放弃对象锁,进入等待此对象的等待锁定池,
只有针对此对象发出notify方法(或notifyAll)后本线程才进入对象锁定池准备获得对象锁进入运行状态。
10、abstract class和interface有什么区别?
答:
声明方法的存在而不去实现它的类被叫做抽象类(abstract
class),它用于要创建一个体现某些基本行为的类,并为该类声明方法,但不能在该类中实现该类的情况。
不能创建abstract 类的实例。
然而可以创建一个变量,其类型是一个抽象类,并让它指向具体子类的一个实例。
不能有抽象构造函数或抽象静态方法。
Abstract 类的子类为它们父类中的所有抽象方法提供实现,否则它们也是抽象类为。
取而代之,在子类中实现该方法。
知道其行为的其它类可以在类中实现这些方法。
接口(interface)是抽象类的变体。
在接口中,所有方法都是抽象的。
多继承性可通过实现这样的接口而获得。
接口中的所有方法都是抽象的,没有一个有程序体。
接口只可以定义static final成员变量。
接口的实现与子类相似,除了该实现类不能从接口定义中继承行为。
当类实现特殊接口时,它定义(即将程序体给予)所有这种接口的方法。
然后,它可以在实现了该接口的类的任何对象上调用接口的方法。
由于有抽象类,它允许使用接口名作为引用变量的类型。
通常的动态联编将生效。
引用可以转换到接口类型或从接口类型转换,instanceof 运算符可以用来决定某对象的类是否实现了接口。
【java编程笔试面试题】相关文章:
Java编程语言12-02
java教程之Java编程基础12-02
java语法基本编程11-05
java编程规范介绍11-29
Java编程学习示例11-28
java并发编程参考11-23
Java语言编程简介11-20
编程java继承是什么12-06
java面向对象编程讲解11-23