《Core Java Volume I》读书笔记——接口

定义Interfaces, is a way of describing what classes should do, without specifying how they should do it.和大多数有接口这项技术的语言里面一样,接口只负责定义行为(方法),具体行为的实现由类完成。另外要说明的就是Java 8(Java SE 8/JDK 1.8)引入的函数式接口(functional interface):只包含一个抽象方法的接口。这里要注意有两个条件:只包含一个,且是抽象的方法(所以只限定了抽象方法,可以包含多个非抽象方法)。函数式接口可以选择性使用@FunctionalInte

《Core Java Volume I》读书笔记——异常

异常分类先上图:Java的顶级异常类是Throwable类,下面分为Error和Exception两大子类。Error及其子异常代表的是Java运行时系统内部错误,资源耗尽等情况。如果这种异常发生了,我们只能让自己的程序退出。而Exception及其分支异常则是我们写代码时需要关注的。上面是按照类的继承来分的。另外一种更重要的分法是把Error和RuntimeException及其子类异常称为非受检异常(unchecked exception),剩余其它的所有异常称为受检异常(checked exception)。所谓非受检异常就是我们代码中无需对这类异常进行捕获处理,但受检异常则必须有地方捕

Java中的bean

Java中经常听到和用到Bean,你能说清楚Bean这个概念吗?如果不能,本文可以帮你解惑。不是特别准确的划分的话,Java中有两类Bean:JavaBean和Spring中的Bean。JavaBeanJavaBean比较好理解,因为它是有标准的(可以点击这里从oracle官方下载specification),有兴趣的可以阅读一下,内容还挺多的。简单来说,这个标准规定了符合以下四个条件的Java类就称之为JavaBean:必须实现了Serializable或Externalizable,即JavaBean必须是可序列化的;必须包含一个public的无参构造函数;所有类的属性必须要有对应的pub

OOP中static的原罪

最近项目中使用Spring Boot,让我稍微有些水土不服,主要原因就是static。看下面两种代码风格:风格1:@Autowired MyService myservice; // doSomething是MyService类的非静态方法 Response resp = myservice.doSomething(someParameters);风格2:// doSomething是MyService类的静态方法 Response resp = MyService.doSomething(someParameters);你平时Coding喜欢哪一种?对我而言,如果doSomething是无

也说996

前段时间996.icu出现后,便迅速蹿红,本来最近热度稍微下降了一些,但马老师和东哥这两天的发声,又把这个话题推上热搜。本来不想讨论这个问题,有蹭热度之嫌,但这个东西的确是和技术人关系非常大的一个话题,所以今天简单聊聊,但都是我的个人看法,不代表任何立场。欢迎讨论。我是反感996的我反感996,是因为这样的工作强度一方面伤身体,另一方面对生活影响比较大。我反感996,是因为有些管理者将996与奋斗者划等号。如果员工不能996,那他就是不奋斗,不上进,应该被淘汰。我反而认为一些管理者推崇996恰好体现了其管理方面的懒惰和无能,因为他不愿意主动或者没有能力去思考能真正提高团队效率、产出的方式,只能

也说编程语言

为什么想说这个呢?有几个原因:前几天在知乎上面看到一个提问说自己要工作了,想学习一门编程语言,是学习Java好还是Python好呢?经常看到各种机构统计的yyyy年mm月的编程语言变化榜单,我也老想点进去看看自己喜欢的语言排名如何?编程语言对于我们技术人是基本功。不过话说现在编程已经全民化了,小学生已经开始学了,或许以后就不光是我们技术人的基本技能了。当然最后一个就是想表述一下我自己对编程语言的看法。先立个flag:之前几篇文章比较长,今天这篇必须简短。我认为必须掌握的语言前端工程师必须擅长JavaScript、CSS、HTML(5)。我不是前端,JS、CSS、HTML都懂点皮毛,能照猫画虎,

如何快速学习新技术

技术人员的快速学习能力是非常重要的,以前觉得这个可能更多的体现在刚毕业的学生身上,但慢慢我发现对于各个阶段的技术人,这个能力都很重要,甚至级别越高这个能力越重要。想想一个公司的CTO,事情应该是很多的(而且很多可能还都是非技术方向的),但作为公司的技术风向标,对于技术的掌握,特别是宽度一定要是非常OK的,否则如果方向错了,下面的人再怎么努力,也是事倍功半的。这一点在我的上一份工作中真的是感受颇深。这次要讨论的如何快速学习是一个非常大的话题,相信每个人都有自己的看法;而且在我看来也没有一个适用于所有人的方法,毕竟人是个复杂的动物,个体差异太大。本文谈的都是我自己的一些心得体会,仅供参考,欢迎讨论

再说保险

昨天发了保险的文章后,没想到感兴趣的人还挺多,也有一些疑惑,所以我打算再写一篇,就我所知道的和我的一些观点进行表述,仅供参考。写之前,老习惯,先说明下:这篇文章依旧不是技术文章,只想看技术文章的略过此文。我没有转行卖保险,我现在唯一的工作还是技术,主要做大数据,有做这方面的朋友欢迎交流,后面我也会多发这方面的技术文章。想尽量在这篇文章里面把我的观点和我所知道的表述完全,后面不再写这个方面的了,所以本文可能会比较长。转变思维今天和一些朋友交流后,发现不太懂的人主要还是对保险的定位没有搞清楚,所以这里再说明一下。保险最主要的作用是用自己还能承受的钱转移自己不能承受的风险。比如,你能承受每年花几千块
|