- 博客(5)
- 收藏
- 关注
原创 软构复习
一、面向对象的编程原则:SOLID 1、里氏替换原则(LSP) 通俗来讲,就是子类可以扩展父类的功能,但不能改变父类原有的功能。它告诉我们在软件中将一个基类对象替换成它的子类对象时,程序不会产生任何错误和异常,反过来不成立,即如果一个软件实体使用的是一个子类对象的话,那么它不一定能够使用基类对象。实际上,在设计接口和抽象类,然后用子类来实现抽象方法,这里就使用了里氏替换原则。里氏代换原则是实现开闭原则的重要方式之一,由于使用基类对象的地方都可以使用子类对象,因此在程序中尽量使用基类类型来对对象进行定义,而在
2020-07-11 16:52:28 157
原创 辨识equals和==
Equals与== == 这个符号,和equals()经常容易混淆。 前者是一个运算符号,后者则是一个方法。 基本数据类型的比较应该使用双等号。 新建了两个对象,比较两个对象的地址是否相同,也应该使用双等号(有些类特殊,如String类)。 至于equals,Object类中的equals方法经常被覆盖,这个方法原本是比较对象的内存地址的。 public boolean equals(Object obj){ return (this == obj); } 上面这个源码是Object类中的。看起来和=
2020-07-11 02:20:32 92
原创 正则表达式
正则表达式 在lab3和lab4中,我们做过一些关于正则表达式的内容,今天来总结一下。 什么是正则表达式? 正则表达式是一种字符串匹配的模式,可以用来检查一个串中是否有某种子串,而且他还可以将匹配的子串替换或者从某个串中取出。 实例 $:匹配输入字符串的结尾位置。要匹配该字符自身用反斜杠加这个字符。 ():标记一个子表达式开始和结束位置 hi+t:可以匹配hiit、hiiit、hiiiiiit等等。+号代表前面的字符至少出现一次或者多次。 hi*t:可以表示ht、hit、hiit等等。*号表示前面的字符可不
2020-07-10 22:56:32 95
原创 粗略谈用户自定义类的一些注意事项2
文章接上一篇粗略谈用户自定义类的一些注意事项1 6、final实例域 可以将实例域定义为final,这样,在每一个构造器执行之后,这个域的值被设置,并且在之后的操作中,是不能对它进行修改的。例如将Employee类中的name域声明为final ,在对象被创建后,这个值将不会被修改,也即没有setName方法。 class Employee { private final String name...
2020-06-06 01:14:23 99
原创 粗略谈用户自定义类的一些注意事项
粗略谈写一个自定义类的一些注意要点 先定义一个简单的类:Employee class Employee { // instance fields private String name ; private double salary; private Local Date hireDay; // constructor public Employee(String n , ...
2020-04-21 01:42:39 154
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人