重生之我在地球Online当程序员15

OOAD&泛型&反射

OOAD

Object Oriented Analysis Design,面向对象的分析和设计!

一个好的程序,一定要满足:高内聚,低耦合

需要遵循:7大设计原则,23个设计模式

设计原则:推翻“三座大山“,建立了新中国

设计模式:游击战, 地道战, 歼灭战…… 具体的业务场景下,有具体的解决方案!

7大设计原则:

  1. 单一原则 一个类只干一件事,一个方法只干一件事

  2. 开闭原则 对新的需求功能扩展是开放的,但是在扩展时对老功能的修改是关闭的;

  3. 里氏替换原则 龙生龙,凤生凤,老鼠儿子会打洞!凡是父类出现的地方,子类都可以进行替换!要求:继承时,不要重写父类已经实现过的行为,但可以扩展!

  4. 接口隔离原则 也叫接口最小化原则,要求:设计接口时,尽可能的要越小越好,功能越单一越好!

  5. 依赖导致原则

  6. 迪米特法则 最少知道原则,妈妈说:不要和陌生人说话!一个类尽可能的只和必须的类进行交互,其它的类统统不用!

  7. 组合&聚合原则

泛型

泛型:是用来在方法或属性中,规范不同类型的数据一种技术!

public interface BaseDao<T,Serializable> {
    int save(T obj);
    int update(T obj);
    List<T> findAll();
    T getById(Serializable id);
}
public class StudentDaoImpl implements BaseDao<Student,Long>{
    @Override
    public int save(Student obj) {
        return 0;
    }
    @Override
    public int update(Student obj) {
        return 0;
    }
    @Override
    public List<Student> findAll() {
        return null;
    }
    @Override
    public Student getById(Long id) {
        return null;
    }
}

泛型分类:

<> 在类上,就叫泛型类!
<> 在接口上,就叫泛型接口!
<> 在方法上,就叫泛型方法!
 eg:   
    public class MathUtil {
        public static <T> String concat(T t1, T t2) {
            return "" + t1 + t2;
        }
    }

泛型擦除:在编译期,JVM使用真实类,替换泛型符号的过程!

反射

反射:是所有框架的底层!

反射:在程序运行期间,反向的去操作 加载期间

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值