7月1号Java学习

一、访问权限修饰符

修饰符

当前类

同包

子类

其他包

private

私有的

可见√

不可见×

不可见×

不可见×

(default)

默认的

可见√

可见√

不可见×

不可见×

protected

受保护的

可见√

可见√

可见√

不可见×

public

公有的

可见√

可见√

可见√

可见√

private的特点: 只有本类可见

(default)的特点: 只有同包可见

protected的特点: 子类可见

public的特点: 任何地方都可见

二、抽象类和接口的区别

1)接口

接口也是一种源代码文件

定义接口的关键字是interface

子类实现接口, 关键字是implements

接口的出现让Java也能够实现多继承, 一个类只能继承一个父类, 但是可以继承多个接口

2)类

定义类的关键字是class

子类继承父类, 关键字是extends

3) 接口与抽象类进行比较

相同点:

1. 都可以作为指针的类型, 实现多态指针

2. 都不可以实例化

不同点:

1. 抽象类用(        )定义, 接口用(        )定义

2. 抽象类用(        )继承, 接口用(       )实现

3. 类只能(        ), 接口可以(        )

4. 虽然两者都不可以被实例化, 但是抽象类可以有构造方法, 接口不可以有构造方法

5. 抽象类可以有抽象方法, 也可以有具体方法, 接口只能有抽象方法, 且接口中所有的 方法默认是(        )修饰的

6. 抽象类可以有(        ), 接口不能有(        ), 只能有(        )

三、单项选择题

1.如果一个接口A有个方法void use(),有个B类实现接口A,则在类B中正确的是? ( )

A.private void use() { …}

B.protected void use() { …}

C.public void use() { …}

D.default  void   use(){ ...}

2.有时为了避免某些未识别的异常抛给上层代码,在某些接口实现中我们通常需要捕获编译运行期所有的异常, 下述哪个类的实例才能达到目的:()

A.Error

B.Exception

C.RuntimeException

D.OutOfMemoryError

3.对于如下代码段,可以放入到横线位置,使程序正确编译运行,而且不产生错误的选项是( )

class A{

public A foo(){return this;}

}

class B extends A{

public A foo(){

return this;

}

}

class C extends B

{

_______

}

A.public void foo(){}

B.public int foo(){return 1;}

C.public B foo(B b){return b;}

D.public A foo(){return A;}

4.指出下列程序的运行结果 
  int i = 9;
  switch (i) {
  default:
  System.out.println("3");
  case 0:
  System.out.println("0");
  break;
  case 1:
  System.out.println("1");
  case 2:
  System.out.println("2");
  }

A、 3

B、3,0

C、 3,0,1

D、3,0,1,2

5..看下面一段程序:
  class Aclass{
   void go(){
    System.out.println("Aclass");
   }
  }
  public class Bclass extends Aclass{
   void go(){
    System.out.println("Bclass");
   }
  public static void main(String args[]){
   Aclass a=new Aclass();
   Aclass a1=new Bclass();
  a.go();
  a1.go();
  }
以上程序运行结果是: 

A、 Aclass
   Aclass

B、 Bclass
   Bclass

C、 Aclass
   Bclass

D、 Bclass
   Aclass

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值