• java----封装思想


    通过封装相同的代码,给外部提供一个接口,外部通过实现这个接口,写不同的业务逻辑

    abstract class Test{
        //业务逻辑代码
        public void test3(){
            //一下代码都是重复的
            int a = 1;
            if(true){
                System.out.println("相同代码");
            }
            if (true){
                System.out.println("相同代码");
            }
            //核心的代码
            if (true){
                print(a);
            }
        }
        public abstract void print(int a);
    }
    
    
    public class UserDao extends Test{
        public static void main(String[] args) {
            UserDao userDao = new UserDao();
            userDao.test3();
        }
        public void print(int a) {  //实现接口(重写)
            System.out.println("业务逻辑代码");
            System.out.println(a);
        }
    }
    

      

    或者使用传递一个类,调用类中特定的方法(本质上调用方法)

    abstract class Test{
        //业务逻辑代码
        public void test3(Function function){
            //一下代码都是重复的
            int a = 1;
            if(true){
                System.out.println("相同代码");
            }
            if (true){
                System.out.println("相同代码");
            }
            //核心的代码
            if (true){
                function.print(a);
            }
        }
    }
    
    public class UserDao extends Test{
        public static void main(String[] args) {
            UserDao userDao = new UserDao();
            userDao.test3(new Function());
        }
    }
    class Function{
        public void print(int a){
            System.out.println(a);
        }
    }
    

      

  • 相关阅读:
    arcgis对谷歌遥感影像拼接
    animation动画
    通过$ref设置样式
    Element drawer添加 滚动条 无法上下滚动
    ECharts 点击事件的 param参数
    解析后台参数
    .NET Core中具有多个实现的依赖注入实现
    玩转Firefox侧栏
    实用AutoHotkey功能展示
    利用7z实现一键解压
  • 原文地址:https://www.cnblogs.com/yanxiaoge/p/11176304.html
Copyright © 2020-2023  润新知