网站公告: 欢迎光临快三官方平台!
新闻动态
联系我们

地址:山东省临沂市沂蒙快三官方平台

电话:400-123-4567

传真:+86-16345345

qq2 qq1 qq2
新闻动态您当前的位置:主页 > 新闻动态 >

面试必备 Java常用基础知识(1)

更新时间:2019-09-05

  在进行阻塞操作时,当前线程会处于阻塞状态,无法从事其他任务,只有当条件返回结果才能继续。

  而非阻塞则是不管 IO 操作是否结束,直接返回,继续当前线程的其他操作,相应操作在后台继续处理。

  输入流、输出流(InputStream/OutputStream)是用于读取或写入字节的,例如操作图片文件。

  Reader、Writer 则是用于操作字符,增加了字符编解码等功能,适用于类似从文件中读取或者写入文本信息。

  本质上计算机操作的都是字节,不管是网络通信还是文件读取,Reader、Writer 相当于构建了应用逻辑和原始数据之间的桥梁。▲★-●

  IO因为是同步阻塞的,△所以为了让多客户端操作只能依赖多个线程来实现,因为其启动或者销毁一个线程是有明显开销的,每个线程都有单独的线程栈等结构,▲●…△所以需要占用非常明显的内存。

  NIO利用单线程轮询事件机制实现,应用的性能和扩展能力有了非常大的提高。

  内核态空间是操作系统层面的基本概念,□▼◁▼操作系统内核、硬件驱动等运行在内核态空间,具有相对高的特权;而用户态空间,则是给普通应用和服务使用。

  Buffer 是 NIO 操作数据的基本工具,Java 为每种原始数据类型都提供了相应的 Buffer 实现(布尔除外)。

  capcity,它反映这个 Buffer 到底有多大,也就是数组的长度。

  limit,相当于操作的限额。在读取或者写入时,limit 的意义很明显是不一样的。比如,读取操作时,很可能将 limit 设置到所容纳数据的上限;而在写入时,则会设置容量或容量以下的可写限度。

  mark,记录上一次 postion 的位置,默认是 0,算是一个便利性的考虑,▼▲往往不是必须的。

  当我们写入几个字节的数据时,position 就会跟着水涨船高,但是它不可能超过 limit 的大小。

  如果我们想把前面写入的数据读出来,需要调用 flip 方法,将 position 设置为 0,limit 设置为以前的 position 那里。

  如果还想从头再读一遍,可以调用 rewind,◆▼让 limit 不变,position 再次设置为 0。■□

  封装的目的是隐藏事务内部的实现细节,◇▲=○▼=△▲以便提高安全性和简化编程。封装提供了合理的边界,避免外部调用者接触到内部的细节。

  继承是代码复用的基础机制。○▲但要注意,继承可以看作是非常紧耦合的一种关系,父类代码修改,子类行为也会变动。在实践中,过度滥用继承,可能会起到反效果。

  多态,主要涉及到重写(override)和重载(overload)、向上转型。重写是父子类中相同名字和参数的方法,•●☆△◆▲■不同的实现;重载则是相同名字的方法,但是不同的参数。(注意方法名和参数相同,但是返回值不同不属于重载,会编译错误)。

  (1)、◆●△▼●单一职责(Single Responsibility),●类或者对象最好是只有单一职责,在程序设计中如果发现某个类承担着多种义务,可以考虑进行拆分。

  (2)、开关原则(Open-Close, Open for extension, close for modification),设计要对扩展开放,对修改关闭。(对于相同模块的不同处理逻辑,尽量不要用if-else来处理,应该抽一个公共接口,然后使用不同的实现。)

  (3)、里氏替换(Liskov Substitution),这是面向对象的基本要素之一,进行继承关系抽象时,凡是可以用父类或者基类的地方,都可以用子类替换。

  (4)、▪️•★接口分离(Interface Segregation),快三投注平台开户我们在进行类和接口设计时,如果在一个接口里定义了太多方法,其子类很可能面临两难,就是只有部分方法对它是有意义的,这就破坏了程序的内聚性。对于这种情况,可以通过拆分成功能单一的多个接口,将行为进行解耦。

  (5)、★△◁◁▽▼依赖反转(Dependency Inversion),实体应该依赖于抽象而不是实现。也就是说高层次模块,不应该依赖于低层次模块,而是应该基于抽象。实践这一原则是保证产品代码之间适当耦合度的法宝。▲●

  (6)、定义的内容:接口中只能包括public函数以及public static final常量;抽象类与类均无任何限制。返回搜狐,查看更多

【返回列表页】
地址:山东省临沂市沂蒙快三官方平台    电话:400-123-4567    传真:+86-16345345
Copyright 2019 快三官方平台   网站地图  ICP备案编号:ICP备********号