用一个对象封装程序的返回信息

调用返回风格(面向对象与主程序子程序) 调用返回风格 1、  主程序-子程序风格 2、  面向对象风格 主程序-子程序: 组件–主程序、子程序 连接件–调用-返回机制 拓扑结构–层次化结构 主程序-子过程风格的优点与缺点 §优点: –有效地将一个较复杂的程序系统设计任务分解成许多易于控制和处理的子任务,便于开发和维护–已被证明是成功的设计方法,可以被用于较大程序 缺点: –规模:程序超过10万行,表现不好;程序太大 阅读详情
 /// <summary>
    /// 错误信息
    /// </summary>
    public class Error : DataBase
    {
        /// <summary>
        /// 错误码
        /// 返回为空,表示调用成功
        /// </summary>
        public string Code { get; set; }

        /// <summary>
        /// 错误信息
        /// 返回为空,表示调用成功
        /// </summary>
        public string Message { get; set; }

        /// <summary>
        /// 构造函数
        /// </summary>
        public Error()
        {
        }

        /// <summary>
        /// 构造函数
        /// </summary>
        /// <param name="code">错误码</param>
        /// <param name="message">错误信息</param>
        public Error(string code, string message)
        {
            this.Code = code;
            this.Message = message;
        }

        public Error(int code, string message)
            : this(code.ToString(), message)
        {
        }

        public static Error Empty
        {
            get
            {
                return new Error();
            }
        }
    }





 public class SyncError : DataBase
    {
        /// <summary>
        /// 错误信息(显示给客户)
        /// </summary>
        public string Message { get; set; }

        private List<SubSyncError> subSyncErrors;

        public List<SubSyncError> SubSyncErrors
        {
            get { return subSyncErrors; }
            set { subSyncErrors = value; }
        }
    }



 public class SubSyncError
    {
       /// <summary>
        /// 错误信息(显示给客户)
       /// </summary>
       public string Message { get; set; }

        private string errorCode;

        public string ErrorCode
        {
            get { return errorCode; }
            set { errorCode = value; }
        }

        private string errorMsg;

        public string ErrorMsg
        {
            get { return errorMsg; }
            set { errorMsg = value; }
        }

        private string subErrorCode;

        public string SubErrorCode
        {
            get { return subErrorCode; }
            set { subErrorCode = value; }
        }

        private string subErrorMsg;

        public string SubErrorMsg
        {
            get { return subErrorMsg; }
            set { subErrorMsg = value; }
        }
    }


Java面向对象(封装)超详细 什么是类:相似的对象划分成一个类类指的就是一种模板,定义了一种特定类型的所有对象的属性和行为。在一个.java的文件中,可以有多个class,但是只能有一个class是用public修饰。被声明为public的 class,必须和文件名相同类的定义格式:[访问修饰符] class 类名{成员变量成员方法(行为)内部类代码块类是模板,通过模板创建出具体的实例,就是对象对象就是实际存在的某类事物的个体,也叫实例 类和对象的关系,就是抽象和具体的关系。创建对象的语法。 阅读详情

相关推荐

面向对象和封装学习总结

面向对象和封装的个人理解和难题关于面向对象和封装的个人理解类和对象封装难题汇总银行账户坐标点学生随机数排序 关于面向对象和封装的个人理解 类和对象 类:对事物的一种描述(具有共同属性和行为的事物的抽象),例如手机,属性:品牌价格,行为:玩游戏,刷vx; 对象:客观存在(在java中体现就是mian方法里面用类定义一个对象,然后用对象去调用方法或者调用成员变量) 二者关系:类为属性行为抽象,对象则为实体。 对象内存图理解:堆内存开辟空间,成员变量出现 并产生默认初始化值,将对象地址值记录以便于通过对象名

m0_62265391的博客 2944

二.统一返回值封装

统一封装后端返回值可以提高接口的一致性、安全性、可维护性和用户体验;统一返回结果中一般主要包含3个参数分别是code,msg,data

qq_32430463的博客 569

请求返回数据封装类

该代码封装了网络请求的返回数据用于返回前段

SpringBoot统一封装返回结果和异常情况

SpringBoot统一封装返回结果和异常情况

u014513181的博客 1994

RK3576的ISP和VPSS图像处理能力实测:对比海思方案能做什么?

本文深度评测了RK3576芯片的ISP和VPSS图像处理能力,并与海思方案进行对比。测试显示,RK3576在MIPI接口灵活性、多路视频支持、HDR动态范围和降噪效果等方面表现优异,特别适合智能视觉和安防监控应用。通过实测数据展示了其在低照度、高动态范围等复杂场景下的卓越性能。

weixin_42713608的博客 261

教程:使用树莓派连接Pixhawk飞控

教程:使用树莓派连接Pixhawk飞控树莓派可以与Pixhawk飞控相连,读取飞控中的状态信息,同时对飞控发送指令。树莓派作为一个更高性能的计算平台,可以运行图像识别、机器学习、实时路径规划等程序,为开源无人机带来了无限可能。本文将介绍如何在树莓派上使用APSync。不需要了解Linux,即可将树莓派连接到Pixhawk飞控。使用的器材为: Pixhawk飞控 树莓派3B(Raspberry Pi

Roger今天好好搬砖了吗 5万+

项目的返回类型封装(封装返回类型)

场景:项目需统一制定返回编码和提示信息,以及提供的数据。

qq_43393995的博客 569

Linux双网卡设置IP属于同一网段的ping方法以及现象记录分析

文章目录前言ping以及MAC地址总结 前言 写在前面:经常遇到客户将板卡上的两个网络设备的IP地址设置为同一网段的情况,比如eth0:192.168.0.232,eth1:192.168.0.30. 我的解释是,不能设置为同一网段,或者使用其中一个时候下线另外一个网卡。但是我不知道这个说法到底是根据什么,查了很多资料也没找到明确的说法,但是下面这个实验能够说明一些现象的原因。 ping以及MAC地址 首先查看网卡的信息 ifconfig 因为两个网卡都在同一个网段,所以如果这个时候直接和我们的主机(I

“逛丢一只鞋”的博客 1万+

01----------统一封装返回信息{code,msg,data}

在实际开发过程中,我们经常要返回数据给前台,这时候就需要定义返回的code 1.封装result,作为返回的对象 public class Result&lt;T&gt; {          private int code;     private String msg;     private T data;          /**      *  成功时候的调用      * */ ...

冷炎嗄的博客 2万+

用InVEST做碳中和规划?手把手教你计算城市碳储量与热岛效应

本文详细介绍了如何利用InVEST模型进行城市碳中和规划的科学评估。通过手把手教学,演示了如何使用该模型的碳存储与城市热岛缓解模块,从数据准备、模型运行到结果解读,量化评估不同规划方案下的碳储量变化与热岛效应缓解潜力,为城市规划者提供科学的决策依据。

weixin_29201313的博客 822

别再手动拆解字节了!用博图这个功能指令,5分钟搞定ARRAY转BOOL数组

本文详细介绍了西门子博图中`ARRAY_TO_BOOL`功能指令的高效应用,帮助工程师快速实现ARRAY到BOOL数组的转换。通过实战案例和参数配置指南,展示了如何5分钟内完成传统方法需半小时的任务,大幅提升PLC编程效率,特别适用于通信报文解析和设备状态监控。

weixin_42653691的博客 263

SpringMVC | 统一处理Bean Validation校验错误信息

Bean Validation是目前用的最多的验证工具,因为是运行时数据验证框架,在验证之后验证的错误信息会被马上返回。但有时候验证的错误信息,每次都要进行判断,是否有错,然后组合成项目中对应的数据模型,返回前端。这样比较麻烦。这也是本文要解决的问题。 @RequestMapping(value = &amp;amp;quot;/plan&amp;amp;quot;, method = RequestMethod.POST) public R

程序员阿康 5748

信创迁移实战:在银河麒麟V10-SP1上为Milvus离线部署Docker(附SP1专属避坑指南)

本文详细介绍了在银河麒麟V10-SP1 x86_64环境下离线部署Docker的全流程,特别针对该版本特有的自定义目录安装失败问题提供深度分析和解决方案。通过实战验证的步骤和避坑指南,帮助用户在信创项目中顺利完成Milvus等应用的容器化部署。

weixin_30687051的博客 532

微信小程序解决异步封装http请求的问题

app.js postData: function (url, data) { var that = this; return new Promise(function (resolve, reject) { wx.request({ url: that.globalData.baseURL + url, data: data, method: &quot;GET&quot;, ...

Easy 1171

ESP32实战:破解校园网WPA2-Enterprise认证的完整指南

本文详细介绍了如何使用ESP32开发板破解校园网WPA2-Enterprise认证的完整指南。通过硬件准备、环境搭建、核心代码实现及常见问题排查,帮助开发者解决企业级WiFi连接难题,特别适用于校园网环境下的物联网设备开发。

weixin_29194817的博客 454

如何在R语言中使用Logistic回归模型

在日常学习或工作中经常会使用线性回归模型对某一事物进行预测,例如预测房价、身高、GDP、学生成绩等,发现这些被预测的变量都属于连续型变量。然而有些情况下,被预测变量可能是二元变量,即成功或失败、流失或不流失、涨或跌等,对于这类问题,线性回归将束手无策。这个时候就需要另一种回归方法进行预测,即Logistic回归。 在实际应用中,Logistic模型主要有三大用途: 1)寻找危险因素,找到某些影响...

weixin_34056162的博客 9552

【JAVA】JAVA接口公共返回体ResponseData封装

JAVA接口公共返回体ResponseData封装,使用泛型的经典 例子

JAVA领域优质创作者,基于分片网络查询方法专利发明者。 1539

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

5分钟看懂Java封装函数的返回结果实例

今天程序员打V在工作的时候遇到一个问题,那就是我们要如何让一个函数返回各种不同类型的数据? 有一个好方法,那就是封装我们的返回结果。 我们可以把要返回的对象跟信息一起封装成一个新的对象之后再返回。如此一来,调用者就可以根据需要从返回的封装对象中取出目标对象或者信息了。

互相学习 1232

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

java 封装返回值_java 封装返回结果实体类

public class ResponseMessage {private final static String STATUS_OK = "0";private final static String STATUS_ERROR = "1";private String status; // 状态private Object data; // 返回值private Exception ...

weixin_42297665的博客 1039

JAVA基础:反射的作用特点,反射获得类信息,返回操作对象

程序可以访问、检测和修改它本身状态或行为的一种能力在程序运行时,可以通过反射了解类的信息 和 使用类了解类的哪些信息呢?类的基本信息(类名,修饰符,实现接口,继承的父类,所属的包,使用的注解)类的构造方法信息 (修饰符,方法名,参数列表,异常声明,注意:没有方法体)类的属性信息(修饰符,属性类型,属性名)类的普通方法信息(修饰符,返回类型,方法名,参数列表,异常声明,注意:没有方法体)如何实用类?创建对象调用对象的方法调用对象的属性为什么要通过反射了解类信息,要操作类对象?

weixin_53755148的博客 1835

java封装接口返回,程序那些事

接口返回消息封装类2019.04.08 | 725阅读 | 0条评论 | javapackagecom.kd.modelapi.common;importjava.io.PrintWriter;importjava.io.StringWriter;importcom.kd.enu.ResultEnum;/***通用的对外返回结果字段*/publicclassResponseVo{p...

weixin_39630182的博客 170

为你解释—面向对象特性封装详解

Java语言是所有计算机语言中应用最为广泛的一门语言,具有许多的优点和特性,比如:面向对象性、安全性、多线程性、可移植性和跨平台性等。 在众多java语言的特点中,面向对象性是最为区别于其他语言的特点了。而java的面向对象性是什么样的特性呢,同样面向对象性也有自己的特征,“封装”性就是其中一个,本篇文章主要是介绍面向对象特性封装知识详解 既然说到了java的面向对象性,那么把面向对象性的特征在这里都列举出来,面向对象共有三大特征,分别是封装、继承和多态。封装就是由面向过程向过程推进,将同种对象的属性和方法

zzwAriel的博客 879

【Java】封装对象

Java封装 在面向对象程式设计方法中,封装(英语:Encapsulation)是指一种将抽象性函式接口的实现细节部份包装、隐藏起来的方法。 封装可以被认为是一个保护屏障,防止该类的代码和数据被外部类定义的代码随机访问。 要访问该类的代码和数据,必须通过严格的接口控制。 封装最主要的功能在于我们能修改自己的实现代码,而不用修改那些调用我们代码的程序片段。 适当的封装可以让程式码更容易理解...

JockLiu的博客 6269

Java基础10 面向对象~封装

为热爱编程的你点赞! 学习SpringBoot实战课程 https://edu.youkuaiyun.com/course/detail/31433 学习SpringCloud入门课程 https://edu.youkuaiyun.com/course/detail/31451 前言 本文带大家深入学习面向对象的封装特性,从封装的作用,到利用访问修饰符进行信息隐藏,再到包的使用,最后将探讨对象之间的通信。 封装特性 面向对象有三大特性,分别是 封装 继承 多态 掌握面向对象的主线,就是掌握以上三大特性。 什么是封装 封装这个

恒哥的博客 2784

Java——面向对象程序设计的一些总结(封装、继承、多态)

Java是一门面向对象的语言,本文对面向对象的三大特征——封装、继承、多态做了详细的介绍。

Ju的博客 1427

【图书管理系统】深入解析基于 SpringBoot 统一返回结果封装:实现结果封装的方法、引入拦截器和统一返回结果后的代码交互流程

@SneakyThrows、@ControllerAdvice、supports()、beforeBodyWrite()、writeValueAsString、StringHttpMessageConverter、MappingJackson2XmlHttpMessageConverter、

OuO-1 的博客 1700
上一篇: mouseout与mouseleave
下一篇: 在一个div里放一个table,如果不设置border="0" cellpadding="0" cellspacing="0",当table 的高和宽与div相等时,会超出div
code旅行者
博客等级 码龄15年 22粉丝 107原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值