问答题:

1.子类在什么情况下可以继承父类友好成员?

答:在同一个包内

2.子类通过怎样的方法可以隐藏继承的成员变量?

答:声明一个与父类相同变量名的成员变量

3.子类重写继承的方法原则是什么?

答:保证方法的名字,类型,参数个数,类型同父类完全相同

4.子类的构造方法第一条语句是什么?

答:super(),如果不写,编译器也会自动调用

5.子类对象一单重写了继承的方法,就会隐藏继承的方法,对吗?

答:对

6.子类重写继承方法时,可以降低方法的访问权限嘛?

答:不可以,只可以增加权限

7.简述super关键字用法

答:super关键字是一个引用超类的对象

8.假设父类有个方法

public double f(double x,double y){

  return x+y;

}

是否允许子类再次声明下面方法

public float f(double x,double y){

  return 23;

}

答:允许,该overwrite就隐藏了父类的方法

9.父类的final方法可以被子类重写嘛

答:不可以

10.什么类可以有抽象方法?

答:抽象类

11.什么叫对象的上转型对象?

答:子类对象引用放入父类的声明

12.什么叫接口回调?

答:子类接口引用调入父类接口声明

13.与类有关的匿名类一定是该类的一个子类吗?与接口有关的匿名类一定是实现接口的子类吗?

答:一定是,一定是

14.怎样声明一个泛型类?怎样评价SDK1.5新出的泛型?

答:使用尖括号,对未来的实际开发有了很大改善吧

15阅读下列程序,写出下列程序的结果。

程序在书本上

答:最大公约数:6

最小公倍数:36

最大公约数:方法的参数值不是正整数

16下列程序中,错误代码是哪一个?

答:在classA中,getFloat方法是友好型,所以B继承A类后,getFloat方法只能扩大权限,不能缩小为private类型

作业题

1.编写一个类,该类中有如下方法;

public int f(int a,int b){

}//要求找出ab的最大公约数

编写一个该类子类,要求子类重写方法f(),而且重写的方法将返回两个整数的最小公倍数

要求:在重写方法的方法体中首先调用被隐藏的方法返回ab的最大公约数m,然后将(a*b)/m的值返回,在应用的程序的主类中分别用父类和子类创建对象,并分别调用方法f()计算两个正整数的最大公约数和最小公倍数

public class Demo03 {
public static void main(String[] args) {
System.out.println(new Function().f(, ));
System.out.println(new SonFunction().f(, ));
}
}
class Function{
public int f(int a,int b) {
if(a>b) {
int temp=a;
a=b;
b=temp;
}
int fin = ;
for(int i=;i<=a;i++) {
if(a%i==&&b%i==) {
fin=i;
}
}
return fin;
}
}
class SonFunction extends Function{ @Override
public int f(int a, int b) {
int m=super.f(a, b);
return (a*b)/m;
} }

2.编写一个抽象类,该类有3个抽象方法

public abstract void f(int x);

public abstract void g(int x,int y);

public abstract double h(double x);

然后分别给出这个抽象类的3个子类

要求,在应用程序的主类中创建子类对象,再向上转型对象调用方法f,g,h

public class Demo03 {
public static void main(String[] args) {
A a=new C();
a.f();
a.g(, );
a.h();
}
} interface A{
public abstract void f(int x);
public abstract void g(int x,int y);
public abstract double h(double x);
}
class C implements A{ @Override
public void f(int x) {
System.out.println("This is f()");
} @Override
public void g(int x, int y) {
System.out.println("This is g");
} @Override
public double h(double x) {
System.out.println("This is h");
return ;
} }

4.举例说明匿名类的用法

  直接new出来,不需要后续的调用的时候可以这样

5.编写一个异常类,并写出一个产生异常的方法,在应用程序中测试异常

public class Demo04 {
public static void main(String[] args) {
String a="嘤嘤嘤\n";
String b="嘤嘤嘤\n";
String c="我就不嘤嘤嘤\n";
try {
new RetalkTest().ReTalk(b, c);
new RetalkTest().ReTalk(a, b);
} catch (RetalkException e) {
e.printStackTrace();
} }
}
class RetalkException extends Exception{
String message="";
public RetalkException(){
message="复读机异常\n";
}
@Override
public String toString() {
return message;
} }
class RetalkTest{
public void ReTalk(String a,String b) throws RetalkException {
System.out.println(a+b);
if(a.equals(b)) {
throw new RetalkException();
}
else {
System.out.println("还好没有复读\n");
}
}
}

JavaSE习题 继承接口和泛型的更多相关文章

  1. 接口是否可继承接口? 抽像类是否可实现(implements)接口? 抽像类是否可继承实体类(concrete class)?

    接口是否可继承接口? 抽像类是否可实现(implements)接口? 抽像类是否可继承实体类(concrete class)? 1. 接口可以继承接口. 2. 抽像类可以实现(implements)接 ...

  2. python的类的继承-接口继承-归一化设计

    1.先在子类本身找,如果子类没有,会去父类找 class Dad: '这个是爸爸类' money=10#Dad类的数据属性 def __init__(self,name): print("爸 ...

  3. 【Java面试题】60 接口是否可继承接口? 抽象类是否可实现(implements)接口? 抽象类是否可继承具体类(concrete class)? 抽象类中是否可以有静态的main方法?

    接口可以继承接口.抽象类可以实现(implements)接口,抽象类可以继承具体类.抽象类中可以有静态的main方法. 问:  抽象类是否可继承实体类 (concrete class) 答: 抽象类是 ...

  4. java 接口 继承 接口 抽象类 继承 实体类

    韩梦飞沙  韩亚飞  313134555@qq.com  yue31313  han_meng_fei_sha 接口 可以 继承 接口 抽象类 可以 实现 接口 抽象类 继承实体类 需要 实体类 有 ...

  5. 编写高质量代码改善C#程序的157个建议——建议46:显式释放资源需继承接口IDisposable

    建议46:显式释放资源需继承接口IDisposable C#中的每一个类型都代表一种资源,资源分为两类: 托管资源:由CLR管理分配和释放的资源,即从CLR里new出来的对象. 非托管资源:不受CLR ...

  6. 接口是否可继承接口? 抽象类是否可实现(implements)接口? 抽象类是否可继承实体类(concrete class)?

    接口是否可继承接口? 抽象类是否可实现(implements)接口? 抽象类是否可继承实体类(concrete class)? 答:接口可以继承接口.抽象类可以实现(implements)接口,抽象类 ...

  7. 接口的定义——默认加public abstract默认全局常量;与继承不同,子类可以同时实现多个接口;抽象类实现接口;接口继承接口

    一. 接口的定义 接口中定义的方法,全部都为抽象方法,默认加public abstract 接口中定义的变量,全部为全局常量,默认加public static final 二.与继承不同,子类可以同时 ...

  8. 2019-7-29-C#-在基类定义好方法让子类继承接口就能实现

    title author date CreateTime categories C# 在基类定义好方法让子类继承接口就能实现 lindexi 2019-07-29 09:57:49 +0800 201 ...

  9. C# 在基类定义好方法让子类继承接口就能实现

    在 C# 里面,接口的定义只需要类里面存在和接口声明相同的方法或属性就可以,而存在的方法或属性是在子类定义的还是基类里面定义的都无所谓.也就是在基类里面写好了方法,但不继承接口,等子类继承接口的时候就 ...

随机推荐

  1. 金九银十跳槽季,程序员面试点解析之Java专场

    前言 近年来Java工程师这个岗位炙手可热,市场需求大,学习Java的人也越来越多,所以IT企业与求职者的选择都比较多,那么IT企业在面试时都会提哪些问题呢.下面为大家分享 Java高级工程师面试阿里 ...

  2. 使用Wisdom RESTClient如何在Linux和Mac上获取测试报告和API文档?

    使用Wisdom RESTClient自动化测试REST API,生成REST API文档, 需要先执行命令java -jar restclient-1.2.jar启动Wisdom RESTClien ...

  3. 目标检测论文阅读:Deformable Convolutional Networks

    https://blog.csdn.net/qq_21949357/article/details/80538255 这篇论文其实读起来还是比较难懂的,主要是细节部分很需要推敲,尤其是deformab ...

  4. OLED屏幕那些次像素有趣的排列方式

    http://www.dzsc.com/data/2016-6-2/109856.html 我们今天的重点内容为倒数第二列内容的上半部分,也就是RGB排列和Pentile排列.在介绍OLED屏幕时候我 ...

  5. Python笔记 #21# DHNN

    离散型hopfield神经网络.参考自http://web.cs.ucla.edu/~rosen/161/notes/hopfield.html实现的草稿版本: # http://web.cs.ucl ...

  6. CE教程

    https://www.52pojie.cn/thread-726510-1-1.htmlhttps://www.52pojie.cn/thread-726154-1-1.html https://w ...

  7. redis3.0 主从

    redis3.0 主从 两个实例:6000为主,6001为从. 主实例配置如下: # replication repl-diskless-sync no repl-ping-slave-period ...

  8. Fiddler(一)Fiddler介绍及应用场景

    Fiddler是一款网络抓包工具,抓包可以是抓取电脑端请求的数据,还可以抓取移动端(手机APP)的数据包,可以监控HTTP和HTTPS的流量,可以通过浏览器或者客户端软件向服务器发送的HTTP或者HT ...

  9. Codeforces 866C Gotta Go Fast - 动态规划 - 概率与期望 - 二分答案

    You're trying to set the record on your favorite video game. The game consists of N levels, which mu ...

  10. 学习Django,http协议,

    学习Django http协议 规则 ''' http协议:超文本传输协议 ①基于TCP/IP协议基础上的应用层协议,底层实现仍为socket ②基于请求-响应模式:通讯一定是从客户端开始,服务器端接 ...