- 2021想进大厂?高手面经送给你:Java基础笔记+面试手册+项目+高并发架构设计攻略
码农小芷
正好在离职交接空档期,就抽空简单分享自己的一些个人经历给大家,希望对刚毕业不久或者工作三五年的同学能有一些帮助。个人经历正文前先来一些简单的自我介绍,这部分水分较多,如果没兴趣的同学可以直接跳到第二部分看些面试题。我是16年本科毕业,毕业第一年在福建上班,17年到杭州,来杭州前,自己花了很长时间准备面试,本来信心满满,但是到了杭州,还是遇到很大的挫折。我还记得,当时有一个面试官问我说你说下什么是分
- 2.11Java基础笔记
铃兰花的土壤
java笔记开发语言
staticstatic可以用来修饰类的成员方法、类的成员变量,另外也可以编写static代码块来优化程序性能static修饰的成员变量和方法从属于类,普通变量和方法从属于对象static方法static方法也成为静态方法,由于静态方法不依赖于任何对象就可以直接访问,因此对于静态方法来说,是没有this的,因为不依附于任何对象,既然都没有对象,就谈不上this了,并且由于此特性,在静态方法中不能访
- JAVA基础笔记——List
MAX--李
JAVA
包装类数学相关日期相关字符串相关集合相关异常相关IO相关线程相关网络相关反射注解*GUI------------------------------------------------------------------------------------------------------------------------------------------------------------
- Java基础笔记2019-10-06
此广告牌招租啊
Java版本:1、JavaME(JavaMicroEdition):开发移动应用和嵌入式应用。2、JavaSE(JavaStandardEdition):开发桌面应用。3、JavaEE(JavaEnterpriseEdition):开发Web应用。Java类之间的继承只支持单一继承,不支持多继承。Java支持类与接口之间的多继承,即一个类可以继承(实现implements)多个接口。Java是体系
- Java基础笔记-基本数据类型&&运算符
歌藏
Java笔记java
基础数据类型以下是Java的基本类型数据表和其可以储存的数据类型数据类型储存数据类型byte存储从-128到127的整数short存储从-32,768到32,767的整数int存储从-2,147,483,648到2,147,483,647的整数long存储从-9,223,372,036,854,775,808到9,223,372,036,854,775,807的整数float存储小数。足以存储6到
- Java基础笔记-循环
歌藏
Java笔记笔记java
循环Java语言中有三种循环,分别是以下三种while语句do/while语句for语句while语句while(条件代码){//代码块}以上是while语句的代码,当一个while语句的条件代码输出是true时,while语句中的代码块就会执行一次,每当执行完一次代码块后while语句会继续判断条件语句,如果此时条件代码的输出还是true的话,那么while所包含的代码块又会被运行一次,直到条件
- python之函数的实参和形参
卧龙不言
日常总结python基础pythonpython基础
博主简介:原互联网大厂tencent员工,网安巨头Venustech员工,阿里云开发社区专家博主,微信公众号java基础笔记优质创作者,csdn优质创作博主,创业者,知识共享者,欢迎关注,点赞,收藏。目录一、背景二、实参和形参1.传值2.传引用三、参考四、总结一、背景 实际开发过程中,经常会遇到很多完全相同或者非常相似的操作,这时,可以将实现类似操作的代码封装为函数,然后在需要的地方调用该函数。
- 编程精华资源大汇总
King-Blog
JAVAWEB
Java学习专栏名称专栏说明作者Java研发技术指南着重于JavaWeb研发技术,讲求实现,讨论优化与设计!一切从简单出发,始终向高端冲刺!cuisuqiangJava编程Step-by-step从零基础开始,如何进行Java编程开发liuwei1981Java基础笔记用腻了SSH了么?回来看看Java基础吧,我将和您一同回顾那些“童年”的基础知识。snkcxyJ2EE核心模式J2EE核心模式(C
- Java基础笔记(正则表达式)
恐高宇航员
JavaSEjava正则表达式开发语言
21正则表达式基本介绍:用某种模式去匹配字符串的一个公式底层实现:⭐️publicclassRegTheory{publicstaticvoidmain(String[]args){Stringcontent="1998年12月8日,第二代Java平台的企业版J2EE发布。1999年6月,Sun公司发布了"+"第二代Java平台(简称为Java2)的3个版本:J2ME(Java2MicroEdit
- Java基础笔记
刘家奕_
java笔记开发语言
1.数据类型在java语言中包括两种:第一种:基本数据类型基本数据类型又可以划分为4大类8小种:第一类:整数型byte,short,int,long(没有小数的)第二类:浮点型float,aouble(带有小数的)第三类:布尔型boolean:只有两个值true和false,true表示真,false表示假第四类:字符型char:java中规定字符型字面量必须使用单引号括起来,属于文字。8小种:b
- 【Java基础笔记】第十五章 代码块
Silence丶
Java基础java开发语言后端
目录前言第十五章代码块15.1代码块概述15.2静态代码块15.2.1格式15.2.2特点15.2.3使用场景15.3构造代码块(了解,用的少)15.3.1格式15.3.2特点15.3.3使用场景【静态代码块案例】斗地主游戏前言该文章为Java基础自学笔记其他内容:Java基础学习笔记目录学习用书:《Java核心技术卷Ⅰ基础知识(第10版)》《Java经典编程300例》第十五章代码块15.1代码块
- java基础笔记
滨海之君
面试总结java
这段时间学习很艰难,一直喜欢的女孩拒绝了我。以后不要天天学习没空撩妹了。9.常用类9.1String类9.1.1String:字符串,使用一对“”引起来表示。1.String声明为final的,不可被继承;2.String实现了Serializable接口:表示字符串是支持序列化的。实现了Comparable接口,表示String可以比较大小。3.String内部定义了finalchar[]val
- Java基础笔记总结(17)-线程 单例模式 线程池 工厂模式 适配器模式 GUI
吵吵先生
线程:线程是程序的执行路径,一个进程包含多条线程多线程的并发执行可以提高程序的效率,可以同时完成多项工作。多行程并行和并发的区别并行的使用要使用多核CPU并发指两个任务都运行,而处理器只能接受一个任务,将两个任务轮流执行Java命令启动java虚拟机,启动JVM等于启动一个进程,该进程会自动启动一个“主线程”,然后主线程去调用某类的main方法JVM的启动至少启动了垃圾回收线程和主线程,因此JVM
- python基础之语言发展历史
卧龙不言
python基础python基础
博主简介:原互联网大厂tencent员工,网安巨头Venustech员工,阿里云开发社区专家博主,微信公众号java基础笔记优质创作者,csdn优质创作博主,创业者,知识共享者,欢迎关注,点赞,收藏。目录一、前言二、发展历史1、Python是一种面向对象的解释型编程语言2、Python常被称为胶水语言3、Python由Guido开发4、Python连续多年入选编程语言TOP105、Python的发
- Java基础笔记(Maven入门)
缩缩北行鸟
Java程序人生
1Maven《Maven安装与配置》Maven是一个Java项目管理和构建工具,它提供了:标准化的项目结构标准化的构建流程依赖管理:它使用pom.xml文件定义项目内容,该文件只需声明依赖项,而Maven会自动下载该依赖项并导入到classpath中Maven使用如下图所示早已预定好的目录结构:1.1依赖管理1.1.1pom.xml文件结构pom.xml是一个XML文件,它的根元素是使用、、ver
- 那些年做的java基础笔记
还没学会跳舞的小小鱼
#基本语法##java基本数据类型1.数值型*整数类型:byte(8)、short(16)、int(32)、long(64)*浮点类型:float、double(double,双精度数值,表示的数据类型是float类型的双倍)2.字符型:char('a')3.布尔型:boolean(true,false)注意:1.JAVA默认正数类型是int类型,如果需要声明正数是long类型,必须在数字末尾添加
- 1-Java基础笔记
只剩玫瑰一片
java笔记
字符串函数获取字符串长度lenght返回类型:int作用:获取字符串长度用法:inta=b.lenght();获取字符charAt返回类型:String作用:获取字符串内某一下标对应的值用法:chara=b.charAt(下标);字符串相同比较equalsequals(“被比较的字符串”);返回类型:boolean作用:判断两字符串是否相同用法:booleanbool=str.equals("ja
- java基础笔记12-泛型详解
道上简哥
课堂笔记java开发语言泛型
java基础笔记-泛型泛型的好处传统方法存在的问题泛型介绍泛型的语法泛型的声明自定义泛型类注意细节自定义泛型接口注意细节自定义泛型方法注意细节泛型的好处传统方法存在的问题不能对加入到集合ArrayList中的数据类型进行约束(不安全)遍历的时候,需要对数据类型进行转换,数据量大的时候会对效率有影响泛型介绍泛型:可以表示数据类型的一种类型泛型又称参数化类型,是JDK5.0新出现的类型,为了解决数据安
- (八)Java面向对象封装、继承、多态(Java基础笔记)
肥仔爱上可乐
Java基础java继承多态封装
一、封装定义:在方法中、类中对属性私有化,用private关键字修饰,通过公共的访问方式进行赋值和取值,从而提高数据的安全性classPerson{//属性封装privateStringname;//私有化属性---只能直接在本类中使用privateintage;//间接给私有化属性赋值publicvoidsetAge(intage){this.age=age;}//间接给私有化属性进行取值pub
- Java基础笔记—普通分页和使用stream api对集合进行分页
时光飞逝悄然抹去了香味
java基础笔记java开发语言jvm
普通分页和使用streamapi对集合分页1、计算页数:2、java8使用streamapi进行分页:3、普通方法分页:1、计算页数:Listlist=newArrayListlist=newArrayListsubList=list.stream().skip((pageNo-1)*pageSize).limit(pageSize).collect(Collectors.toList());3、
- python基础之函数lambda表达式
卧龙不言
python基础python
博主简介:原互联网大厂tencent员工,网安巨头Venustech员工,阿里云开发社区专家博主,微信公众号java基础笔记优质创作者,csdn优质创作博主,创业者,知识共享者,欢迎关注,点赞,收藏。目录一、背景二、lambda表达式三、参考四、总结一、背景 实际开发过程中,经常会遇到很多完全相同或者非常相似的操作,这时,可以将实现类似操作的代码封装为函数,然后在需要的地方调用该函数。这样不仅可
- java基础笔记java的一些基础知识
张起灵的小可爱啊
一、java程序运行过程:1、编译javac文件,把java源文件编译成class字节码文件2、运行java:运行class文件二、标识符(给类,方法,变量起名):1、以字母(采用unicode字符集),下划线,$开头2,其余部分可以是:字母(采用unicode字符集),下划线,$,数字3、不能是关键字三、变量1、局部变量:定义在方法内或语句块内(使用前必需手动初始化)2、成员变量(实例变量fie
- Java基础笔记(初学者适用)
心无旁骛~
linuxeclipsejava
目录一、Java主函数解析二、Java学习注意事项三、JDK和JRE的区别1、jdk--开发环境(核心)2、jre--运行环境3、JVM——转换环境四、常见转义字符五、变量1.变量介绍2.变量细节3.作用域4.数据类型(1)Java数据类型图解(2)整数类型(3)浮点类型(4)字符类型(5)布尔类型(6)基本数据类型转换六、Java中运算符的使用1.“+”号的使用2.算术运算符3.逻辑运算符4.位
- Java基础笔记总结(14)-IO流(2)字符流 FileReader FileWriter BufferedReader BufferedWriter 行号计算LineNumberReader...
吵吵先生
字符流是什么字符流是可以读写字符的IO流字符流读取字符,先要读取字节数据,然后转换为字符,需要把字符转换为字节再写出FileReader类的read()方法可以按照字符大小读取数据FileReaderfr=newFileReader("aaa.txt");//注意这个文件必须存在intch;while((ch=fr.read())!=-1){//通过项目默认的码表一次读取一个字符System.ou
- python基础之字符串序列的操作
卧龙不言
python基础日常总结python基础python
博主简介:原互联网大厂tencent员工,网安巨头Venustech员工,阿里云开发社区专家博主,微信公众号java基础笔记优质创作者,csdn优质创作博主,创业者,知识共享者,欢迎关注,点赞,收藏。目录一、背景二、概念三、索引四、分片五、序列相加六、乘法七、长度、最小值和最大值八、参考九、总结一、背景 Python是一门易于学习、功能强大的编程语言。它提供了高效的高级数据结构,还能简单有效地面
- python基础之字典的删除
卧龙不言
python基础日常总结python开发语言
博主简介:原互联网大厂tencent员工,网安巨头Venustech员工,阿里云开发社区专家博主,微信公众号java基础笔记优质创作者,csdn优质创作博主,创业者,知识共享者,欢迎关注,点赞,收藏。目录一、背景二、删除元素1、del命令2、clear()方法3、pop()方法4、popitem()方法三、参考四、总结一、背景 在实际开发过程中,我们会遇到需要将相关数据关联起来的情况,例如,处理
- java基础之控制执行流程if条件语句
卧龙不言
日常总结java语法java基础java条件语句
博主简介:原互联网大厂tencent员工,网安巨头Venustech员工,阿里云开发社区专家博主,微信公众号java基础笔记优质创作者,csdn优质创作博主,创业者,知识共享者,欢迎关注,点赞,收藏。目录一、前言二、格式1、if语句2、if-else语句3、三元运算符4、if-else-if语句三、总结一、前言 在Java里,涉及的控制执行流程的关键字包括if-else、while、do-whi
- Java基础笔记总结(18)-网络编程 TCP UDP 聊天小程序
吵吵先生
网络编程:每台设备在网络中具有唯一的表示,每台网络终端在网络中具有独立的地址,网络数据传输就是用改地址ipconfigping本地回路地址广播地址端口号:每个网络程序需要绑定端口号,尽量使用1024以上的mysql3306oracle1521web80tomcat8080qq4000feiQ2425协议:为计算机网络中进行数据交换而建立的规则,标准或约定的集合UDP面向无连接数据不安全,速度快,不
- 玄子JAVA基础笔记3
玄子Share
JAVAjava算法开发语言
方法方法的定义packageCH03_JAVAMethod;importjava.util.Scanner;//方法的定义publicclassXZ01_DefinitionOfMethod{publicstaticvoidmain(String[]args){Scannerinput=newScanner(System.in);System.out.println("请输入第一个数字:");in
- 玄子JAVA基础笔记
玄子Share
JAVAjavajvm开发语言
编写第一个JAVA代码packageCH01_JAVABase;//hangeTheWorld!publicclassXZ01_ChangeTheWorld{publicstaticvoidmain(String[]args){System.out.println("ChangeTheWorld!");//ChangeTheWorld!}}语句说明快捷语句publicstaticvoidmain(
- PHP,安卓,UI,java,linux视频教程合集
cocos2d-x小菜
javaUIPHPandroidlinux
╔-----------------------------------╗┆
- 各表中的列名必须唯一。在表 'dbo.XXX' 中多次指定了列名 'XXX'。
bozch
.net.net mvc
在.net mvc5中,在执行某一操作的时候,出现了如下错误:
各表中的列名必须唯一。在表 'dbo.XXX' 中多次指定了列名 'XXX'。
经查询当前的操作与错误内容无关,经过对错误信息的排查发现,事故出现在数据库迁移上。
回想过去: 在迁移之前已经对数据库进行了添加字段操作,再次进行迁移插入XXX字段的时候,就会提示如上错误。
&
- Java 对象大小的计算
e200702084
java
Java对象的大小
如何计算一个对象的大小呢?
 
- Mybatis Spring
171815164
mybatis
ApplicationContext ac = new ClassPathXmlApplicationContext("applicationContext.xml");
CustomerService userService = (CustomerService) ac.getBean("customerService");
Customer cust
- JVM 不稳定参数
g21121
jvm
-XX 参数被称为不稳定参数,之所以这么叫是因为此类参数的设置很容易引起JVM 性能上的差异,使JVM 存在极大的不稳定性。当然这是在非合理设置的前提下,如果此类参数设置合理讲大大提高JVM 的性能及稳定性。 可以说“不稳定参数”
- 用户自动登录网站
永夜-极光
用户
1.目标:实现用户登录后,再次登录就自动登录,无需用户名和密码
2.思路:将用户的信息保存为cookie
每次用户访问网站,通过filter拦截所有请求,在filter中读取所有的cookie,如果找到了保存登录信息的cookie,那么在cookie中读取登录信息,然后直接
- centos7 安装后失去win7的引导记录
程序员是怎么炼成的
操作系统
1.使用root身份(必须)打开 /boot/grub2/grub.cfg 2.找到 ### BEGIN /etc/grub.d/30_os-prober ### 在后面添加 menuentry "Windows 7 (loader) (on /dev/sda1)" { 
- Oracle 10g 官方中文安装帮助文档以及Oracle官方中文教程文档下载
aijuans
oracle
Oracle 10g 官方中文安装帮助文档下载:http://download.csdn.net/tag/Oracle%E4%B8%AD%E6%96%87API%EF%BC%8COracle%E4%B8%AD%E6%96%87%E6%96%87%E6%A1%A3%EF%BC%8Coracle%E5%AD%A6%E4%B9%A0%E6%96%87%E6%A1%A3 Oracle 10g 官方中文教程
- JavaEE开源快速开发平台G4Studio_V3.2发布了
無為子
AOPoraclemysqljavaeeG4Studio
我非常高兴地宣布,今天我们最新的JavaEE开源快速开发平台G4Studio_V3.2版本已经正式发布。大家可以通过如下地址下载。
访问G4Studio网站
http://www.g4it.org
G4Studio_V3.2版本变更日志
功能新增
(1).新增了系统右下角滑出提示窗口功能。
(2).新增了文件资源的Zip压缩和解压缩
- Oracle常用的单行函数应用技巧总结
百合不是茶
日期函数转换函数(核心)数字函数通用函数(核心)字符函数
单行函数; 字符函数,数字函数,日期函数,转换函数(核心),通用函数(核心)
一:字符函数:
.UPPER(字符串) 将字符串转为大写
.LOWER (字符串) 将字符串转为小写
.INITCAP(字符串) 将首字母大写
.LENGTH (字符串) 字符串的长度
.REPLACE(字符串,'A','_') 将字符串字符A转换成_
- Mockito异常测试实例
bijian1013
java单元测试mockito
Mockito异常测试实例:
package com.bijian.study;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.when;
import org.junit.Assert;
import org.junit.Test;
import org.mockito.
- GA与量子恒道统计
Bill_chen
JavaScript浏览器百度Google防火墙
前一阵子,统计**网址时,Google Analytics(GA) 和量子恒道统计(也称量子统计),数据有较大的偏差,仔细找相关资料研究了下,总结如下:
为何GA和量子网站统计(量子统计前身为雅虎统计)结果不同?
首先:没有一种网站统计工具能保证百分之百的准确出现该问题可能有以下几个原因:(1)不同的统计分析系统的算法机制不同;(2)统计代码放置的位置和前后
- 【Linux命令三】Top命令
bit1129
linux命令
Linux的Top命令类似于Windows的任务管理器,可以查看当前系统的运行情况,包括CPU、内存的使用情况等。如下是一个Top命令的执行结果:
top - 21:22:04 up 1 day, 23:49, 1 user, load average: 1.10, 1.66, 1.99
Tasks: 202 total, 4 running, 198 sl
- spring四种依赖注入方式
白糖_
spring
平常的java开发中,程序员在某个类中需要依赖其它类的方法,则通常是new一个依赖类再调用类实例的方法,这种开发存在的问题是new的类实例不好统一管理,spring提出了依赖注入的思想,即依赖类不由程序员实例化,而是通过spring容器帮我们new指定实例并且将实例注入到需要该对象的类中。依赖注入的另一种说法是“控制反转”,通俗的理解是:平常我们new一个实例,这个实例的控制权是我
- angular.injector
boyitech
AngularJSAngularJS API
angular.injector
描述: 创建一个injector对象, 调用injector对象的方法可以获得angular的service, 或者用来做依赖注入. 使用方法: angular.injector(modules, [strictDi]) 参数详解: Param Type Details mod
- java-同步访问一个数组Integer[10],生产者不断地往数组放入整数1000,数组满时等待;消费者不断地将数组里面的数置零,数组空时等待
bylijinnan
Integer
public class PC {
/**
* 题目:生产者-消费者。
* 同步访问一个数组Integer[10],生产者不断地往数组放入整数1000,数组满时等待;消费者不断地将数组里面的数置零,数组空时等待。
*/
private static final Integer[] val=new Integer[10];
private static
- 使用Struts2.2.1配置
Chen.H
apachespringWebxmlstruts
Struts2.2.1 需要如下 jar包: commons-fileupload-1.2.1.jar commons-io-1.3.2.jar commons-logging-1.0.4.jar freemarker-2.3.16.jar javassist-3.7.ga.jar ognl-3.0.jar spring.jar
struts2-core-2.2.1.jar struts2-sp
- [职业与教育]青春之歌
comsci
教育
每个人都有自己的青春之歌............但是我要说的却不是青春...
大家如果在自己的职业生涯没有给自己以后创业留一点点机会,仅仅凭学历和人脉关系,是难以在竞争激烈的市场中生存下去的....
&nbs
- oracle连接(join)中使用using关键字
daizj
JOINoraclesqlusing
在oracle连接(join)中使用using关键字
34. View the Exhibit and examine the structure of the ORDERS and ORDER_ITEMS tables.
Evaluate the following SQL statement:
SELECT oi.order_id, product_id, order_date
FRO
- NIO示例
daysinsun
nio
NIO服务端代码:
public class NIOServer {
private Selector selector;
public void startServer(int port) throws IOException {
ServerSocketChannel serverChannel = ServerSocketChannel.open(
- C语言学习homework1
dcj3sjt126com
chomework
0、 课堂练习做完
1、使用sizeof计算出你所知道的所有的类型占用的空间。
int x;
sizeof(x);
sizeof(int);
# include <stdio.h>
int main(void)
{
int x1;
char x2;
double x3;
float x4;
printf(&quo
- select in order by , mysql排序
dcj3sjt126com
mysql
If i select like this:
SELECT id FROM users WHERE id IN(3,4,8,1);
This by default will select users in this order
1,3,4,8,
I would like to select them in the same order that i put IN() values so:
- 页面校验-新建项目
fanxiaolong
页面校验
$(document).ready(
function() {
var flag = true;
$('#changeform').submit(function() {
var projectScValNull = true;
var s ="";
var parent_id = $("#parent_id").v
- Ehcache(02)——ehcache.xml简介
234390216
ehcacheehcache.xml简介
ehcache.xml简介
ehcache.xml文件是用来定义Ehcache的配置信息的,更准确的来说它是定义CacheManager的配置信息的。根据之前我们在《Ehcache简介》一文中对CacheManager的介绍我们知道一切Ehcache的应用都是从CacheManager开始的。在不指定配置信
- junit 4.11中三个新功能
jackyrong
java
junit 4.11中两个新增的功能,首先是注解中可以参数化,比如
import static org.junit.Assert.assertEquals;
import java.util.Arrays;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.junit.runn
- 国外程序员爱用苹果Mac电脑的10大理由
php教程分享
windowsPHPunixMicrosoftperl
Mac 在国外很受欢迎,尤其是在 设计/web开发/IT 人员圈子里。普通用户喜欢 Mac 可以理解,毕竟 Mac 设计美观,简单好用,没有病毒。那么为什么专业人士也对 Mac 情有独钟呢?从个人使用经验来看我想有下面几个原因:
1、Mac OS X 是基于 Unix 的
这一点太重要了,尤其是对开发人员,至少对于我来说很重要,这意味着Unix 下一堆好用的工具都可以随手捡到。如果你是个 wi
- 位运算、异或的实际应用
wenjinglian
位运算
一. 位操作基础,用一张表描述位操作符的应用规则并详细解释。
二. 常用位操作小技巧,有判断奇偶、交换两数、变换符号、求绝对值。
三. 位操作与空间压缩,针对筛素数进行空间压缩。
&n
- weblogic部署项目出现的一些问题(持续补充中……)
Everyday都不同
weblogic部署失败
好吧,weblogic的问题确实……
问题一:
org.springframework.beans.factory.BeanDefinitionStoreException: Failed to read candidate component class: URL [zip:E:/weblogic/user_projects/domains/base_domain/serve
- tomcat7性能调优(01)
toknowme
tomcat7
Tomcat优化: 1、最大连接数最大线程等设置
<Connector port="8082" protocol="HTTP/1.1"
useBodyEncodingForURI="t
- PO VO DAO DTO BO TO概念与区别
xp9802
javaDAO设计模式bean领域模型
O/R Mapping 是 Object Relational Mapping(对象关系映射)的缩写。通俗点讲,就是将对象与关系数据库绑定,用对象来表示关系数据。在O/R Mapping的世界里,有两个基本的也是重要的东东需要了解,即VO,PO。
它们的关系应该是相互独立的,一个VO可以只是PO的部分,也可以是多个PO构成,同样也可以等同于一个PO(指的是他们的属性)。这样,PO独立出来,数据持