Java面试_君哥讲解笔记_java面向对象_3抽象类和接口有什么区别接口是否可以继承接口private修饰的方法可以通过反射访问,那么private的意义是什么_ java类的初始化/执行顺序

Posted 平凡加班狗

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java面试_君哥讲解笔记_java面向对象_3抽象类和接口有什么区别接口是否可以继承接口private修饰的方法可以通过反射访问,那么private的意义是什么_ java类的初始化/执行顺序相关的知识,希望对你有一定的参考价值。

系列文章目录

abstract class(抽象类)和interface(接口)有什么区别


抽象类,是一个类,它只是用abstract去修饰了

而接口 ,接口并不是类。类是用class定义,而接口是inteface定义

接口里面的方法默认是public 修饰的,并且接口中所有的方法不能有实现(java8以后有默认的实现)

抽象类可以有非抽象方法

接口中的变量默认是 final 抽象类中不一定
所以在接口中定义一个变量,这个变量就是常量,但是抽象类中不能这样写抽象类中必须我们自己加上final才行

一个类可以实现多个接口,但只能实现一个抽象类

一个类实现一个接口,必须要实现这个接口中的所有方法,但是抽象类不一定,因为抽象类里面可能有普通方法,不需要实现,只需要实现它的抽象方法

接口不能用new去实例化,如果用new去实例化就相当于重写了它的所有方法,只有在内部类或者监听回调事件的时候才有可能去new接口
而抽象类是可以new去实例化的,但是我们也一般不new抽象类,

抽象类是一种对类的设计,是一种模板
接口是一种行为的抽象

为什么抽象类是一种对类的设计,是一种模板
接口是一种行为的抽象

接口是否可以继承接口

接口是否可以继承接口,盲猜是不行的,继承不是类与类之间吗,接口不是类所以不行
正确答案:可以
接口是可以继承接口的

private修饰的方法可以通过反射访问,那么private的意义是什么

这道题问得特别好,也很重要
private是访问修饰符,表示的是私有的,但是它并不是保证绝的的不允许别人访问
它不是针对程序安全去设计的
他主要是针对我们开发人员在开发的过程中能够很直观的很容易的发现这些错误,并且避免
这就好像你家里建了一个围墙,但是别人要是实在想翻过来还是可以借助工具翻过来的,那你这个围墙还有什么意义呢
所以不能这么说,我们建围墙不是绝对的想阻拦别人进来,只是让别人知道,你们家建了围墙了,我进去可能有难度,
那么这样一般人就不会进来,如果没有围墙,所有人都可以进来,更加的没有安全性可言

java类的初始化顺序


当我们new一个子类的时候,它里面的顺序是怎么样的

以上是关于Java面试_君哥讲解笔记_java面向对象_3抽象类和接口有什么区别接口是否可以继承接口private修饰的方法可以通过反射访问,那么private的意义是什么_ java类的初始化/执行顺序的主要内容,如果未能解决你的问题,请参考以下文章

Java面试宝典_君哥讲解笔记04_java基础面试题——String s=new String(“xyz“);创建了几个String Objectequals和hashCodehashCode(

Java面试宝典_君哥讲解笔记03java基础——浮点型计算为什么会有精度丢失在不使用第三变量的情况下交换2个变量的值

Java面试宝典_君哥讲解笔记02 描述JDKJREJVM之间的关系如果main方法声明成private会怎么样char 类型的变量能不能存储一个中文汉字++a 和a+++的区别等

Java_类和方法笔记

抽象和封装_JAVA_OOP

笔记之_Java面向对象整理