![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
java概念
文章平均质量分 59
java的一些概念,一些优化
胖墩的IT
一步一个脚印走下去,相信自己能成功,
学习的3W原则:who,what,which
生活的3W原则:who,what,why
展开
-
泛型中<?extend E> 和<?super E>存在的意义和不同
一、<?extend E>public class Stack<E> { private Object[] objects; private int index=0; public Stack(){ objects = new Object[16]; }; public void push(E e) { objects[index++] = e; System.out.println(JSON原创 2021-01-17 23:24:05 · 909 阅读 · 1 评论 -
为什么讲复合优先于继承
封装,继承,多态是面向对象类语言的三个核心特性,但是我们经常看到教材或者各种书上会讲复合优先于继承,为什么呢?首先不是说继承不如复合,复合更像是修饰者模式,基类和包装器类的关系,而继承就是父类和子类的关系下面说的都是基于子类扩展父类(实现继承),而不是接口继承(一个类实现一个接口,或者一个接口扩展另一个一个接口)在实际开发中继承的缺点:与方法调用不同,继承打破了封装性:子类依赖于其超类中的特定功能的实现细节,如果需要覆盖超类的方法,就必须要知道超类原来的方法的内部逻辑,否则会照成意想不到的事.原创 2021-01-10 02:03:43 · 561 阅读 · 0 评论 -
单向链表反转
这个题目很多面试都要手撕的class ListNode { int val; ListNode next = null; ListNode(int val) { this.val = val; }}public class Main6 { public ListNode ReverseList(ListNode head) { i...原创 2019-08-21 13:12:55 · 103 阅读 · 0 评论 -
第三章 操作符
在最底层,java中的数据是通过使用操作符来操作的一、优先级 当一个表达式中存在多个操作符时,操作符的优先级决定了计算顺序,但是经常会忘了复杂的优先级规则,所以可以用括号来明确计算规则。注意:在System.out.println()中包含“ + ”操作符,在这种上下文中“ + ”意味着“字符串连接”,如果...原创 2019-02-28 21:40:45 · 84 阅读 · 0 评论 -
第二章 一切都是对象
尽管java是基于c++的,但是相比之下,java是一种更“纯粹”的面向对象程序设计语言。一、必须由你创建所有对象一、存储到什么地方 java 中有五个不同的地方存储数据:1. 寄存器:最快的存储区—处理器内部,数量有限,根据需求分配,不能直接控制2. 堆栈:位于通用RAM(随口访问存储器)中,虽然某些java数据存储在里面,但是对象不存储在这里3. 堆:一种通用的内存池(位于RA...原创 2019-02-17 00:43:18 · 87 阅读 · 0 评论 -
第一章对象导论
对象导论根据java编程思想第四版自己整理的,如果有什么不对的地方请指导。Alan Kay第一个成功总结了Smalltalk的五个基本特性。[Smalltalk]:java所基于的语言之一...原创 2019-02-12 19:34:16 · 112 阅读 · 0 评论 -
信息隐藏/封装为什么这么重要,或者说为什么类和接口是java编程的核心
来自《Effective Java》这本书,加上自己的理解信息隐藏的或者说组件的好处:对于其他的组件,隐藏内部数据和其他实现细节把API和实现清晰的隔离开来,只通过API进行通信API的好处是可以看做是提供方和调用方两方共同遵守的协议,互相不用知道对方内部细节,就可以使用,而且开发互相独立,就像前端和后端程序员商量好json结构和url一样信息隐藏的好处:有效的接触组成系统的各个组件之间的耦合关系,即解耦组件化后可以独立的开发、测试、优化、使用、也好理解,也好修改可以并行开发,提高.原创 2021-01-07 22:41:07 · 477 阅读 · 4 评论