java语言

java编程笔试面试题

时间:2024-10-28 03:11:13 java语言 我要投稿
  • 相关推荐

java编程笔试面试题

  引导语:应聘技术类的岗位都是需要经过笔试考察这一个环节的,以下是小编整理的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编程基础07-26

java教程之Java编程基础09-12

Java语言的编程特点03-18

Java编程学习示例07-31

java面向接口编程08-01

java并发编程参考10-30

java编程规范介绍07-10

Java面试题(精选)06-30

java面试题05-20

java面向对象编程讲解06-18