E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
—java进阶
Java进阶
之深入理解并发编程基础
1概念多进程是指系统能同时运行多个任务(程序)。多线程是指在同一程序中有多个顺序流在执行。例如:在编辑或下载邮件的同时可以打印文件。我的另一篇文章:Java基础之详解Thread与Runnable1.1进程与线程区别进程和线程都是一个时间段的描述,是CPU工作时间段的描述,不过是颗粒大小不同。本质的区别在于每个进程拥有独立的内存单元;而线程则共享内存,共享内存使线程之间的通信比进程之间通信更有效、
陈李冠
·
2016-12-22 00:00
Java进阶
Java进阶
对象集合避免人机交互和业务逻辑进行融合,也就是注意解耦2.注意程序的细节,每个函数的执行可能的结果3.对象数组中的每个元素都是对象的管理者而非对象本身4.for循环返回对于对象返回的是引用,对于基本类型是副本5.能够直接讲对象放到打印中去,因为实现了toString6.Map的put时,key相等时,相当于直接修改key相对应的值Java中有两大种数据类型:基本类型和引用(非基本类型)。基本类型中
zjlearn
·
2016-12-09 15:26
Java进阶
对象集合避免人机交互和业务逻辑进行融合,也就是注意解耦2.注意程序的细节,每个函数的执行可能的结果3.对象数组中的每个元素都是对象的管理者而非对象本身4.for循环返回对于对象返回的是引用,对于基本类型是副本5.能够直接讲对象放到打印中去,因为实现了toString6.Map的put时,key相等时,相当于直接修改key相对应的值Java中有两大种数据类型:基本类型和引用(非基本类型)。基本类型中
zjlearn
·
2016-12-09 15:26
rxjava
article/details/53304728目录前言RxJava概念初步作用-异步模式-观察者模式结构-响应式编程优势-逻辑简洁RxJava依赖RxJava入门事件产生事件消费事件订阅区分回调动作入门示例Rx
Java
奈何心善
·
2016-12-05 17:37
Java进阶
之反射的简单应用:通过反射运行配置文件内容
现在有三个类:Student、Teacher、Doctor和一个测试类:Test,先上代码:publicclassStudent{publicvoidlove(){System.out.println("爱编程,爱Java");}}publicclassTeacher{publicvoidlove(){System.out.println("只爱学生");}}publicclassDoctor{p
罗啦啦
·
2016-11-27 21:37
Java开发杂记
Java进阶
之反射的简单应用:通过反射运行配置文件内容
现在有三个类:Student、Teacher、Doctor和一个测试类:Test,先上代码:publicclassStudent{publicvoidlove(){System.out.println("爱编程,爱Java");}}publicclassTeacher{publicvoidlove(){System.out.println("只爱学生");}}publicclassDoctor{p
15114843569
·
2016-11-27 00:00
java
反射
Java进阶
- JVM 内存管理机制探秘
内容概述JVM运行时数据区概述JVM对象分配、布局与访问过程GC机制与内存分配策略主要以HotSpotJVM为例进行说明JVM运行时数据区概述程序计数器(线程私有):当前线程所执行执行的字节码行号指示器。JVM概念模型中,字节码解析器会通过改变这个计数器的值来选取下一条需要执行的字节码指令,分支、循环、跳转、异常处理、线程回复等基础功能都需要该计数器完成。由于JVM多线程通过线程轮切(并发)实现,
没有故事的A同学
·
2016-11-26 20:47
java
jvm
内存管理
内存分配
技术笔记
Java进阶
- 线程探索
前言深入浅出,对Java多线程的探索-笔者的一段学习笔记,如果错漏,恳请指教。前提概念原子性概念:一个操作或者多个操作要么全部执行并且执行的过程不会被任何因素打断,要么就都不执行。加锁可以保证复合语句的原子性,sychronized可以保证多条语句在synchronized块中语意上是原子的。由Java内存模型来直接保证的原子性变量操作包括read、load、use、assign、store和wr
没有故事的A同学
·
2016-11-26 20:16
技术笔记
Android 下 RxJava 详解,长篇巨作,由浅入深。
/ReactiveX/RxJava前言RxJava概念初步理解作用-异步模式-观察者模式结构-响应式编程优势-逻辑简洁RxJava依赖RxJava入门事件产生事件消费事件订阅不完整定义回调入门示例Rx
Java
cheun258
·
2016-11-25 14:26
Java进阶
(四十七)Socket通信
Java进阶
(四十七)Socket通信 今天讲解一个HelloWord级别的JavaSocket通信的例子。具体通讯过程如下:先启动Server端,进入一个死循环以便一直监听某端口是否有连接请求。
sunhuaqiang1
·
2016-10-15 15:00
java
线程
socket
通信
server
Java进阶
(四十六)简述ArrayList、Vector与LinkedList的异同点
简述ArrayList、Vector与LinkedList的异同点 Collection类的继承图如下: 从图中可以看出,LinkedList与ArrayList、ArrayDeque这三者都实现了List接口.所有使用方式也很相似,主要区别在于因为实现方式的不同,所以对不同的操作具有不同的效率。ArrayList是一个可改变大小的数组.当更多的元素加入到ArrayList中时,其大小将会动态
sunhuaqiang1
·
2016-10-08 20:00
java
ArrayList
LinkedList
Vctor
Java进阶
(四十五)java 字节流与字符流的区别
java字节流与字符流的区别(转载) 字节流与和字符流的使用非常相似,两者除了操作代码上的不同之外,是否还有其他的不同呢? 实际上字节流在操作时本身不会用到缓冲区(内存),是文件本身直接操作的,而字符流在操作时使用了缓冲区,通过缓冲区再操作文件,如下图所示。 下面以两个写文件的操作为主进行比较,但是在操作时字节流和字符流的操作完成之后都不关闭输出流。 范例:使用字节流不关闭执行import
sunhuaqiang1
·
2016-10-08 15:00
java
字符流
内存
字节流
Java进阶
(四十四)线程与进程的特征及区别
线程与进程的特征及区别定义及特征进程 指在系统中能独立运行并作为资源分配的基本单位,它是由一组机器指令、数据和堆栈等组成的,是一个能独立运行的活动实体。进程的特征:1.动态性:进程的实质是程序的一次执行过程,进程是动态产生,动态消亡的。2.并发性:任何进程都可以同其他进程一起并发执行。3.独立性:进程是一个能独立运行的基本单位,同时也是系统分配资源和调度的独立单位。4.异步性:由于进程间的相互制
sunhuaqiang1
·
2016-09-28 08:00
线程
并发
异步
进程
Java进阶
(四十三)线程与进程的区别
Java进阶
(四十三)线程与进程的区别1、线程的基本概念 概念:线程是进程中执行运算的最小单位,是进程中的一个实体,是被系统独立调度和分派的基本单位,线程自己不拥有系统资源,只拥有一点在运行中必不可少的资源
sunhuaqiang1
·
2016-09-28 08:00
java
线程
并发
通信
进程
Java进阶
(四十二)Java中多线程使用匿名内部类的方式进行创建3种方式
Java中多线程使用匿名内部类的方式进行创建3种方式packagecn.edu.ujn.demo;//匿名内部类的格式: publicclassThreadDemo{ publicstaticvoidmain(String[]args){ //继承thread类实现多线程 newThread(){ publicvoidrun(){ for(intx=0;x<100;x++){ System.out
sunhuaqiang1
·
2016-09-27 19:00
java
多线程
匿名方式
JAVA进阶
5.10——下拉列表框和滚动条
importjava.awt.GridLayout;importjavax.swing.JButton;importjavax.swing.JComboBox;importjavax.swing.JFrame;importjavax.swing.JLabel;importjavax.swing.JList;importjavax.swing.JPanel;importjavax.swing.JSc
乔培宸
·
2016-09-26 13:31
JAVA
JAVA进阶
面向对象程序设计——Java语言 MOOC 目录
第1周类与对象1.1用类制造对象1.2定义类1.3成员变量和成员函数1.4对象初始化第2周对象交互2.1对象交互2.2访问属性2.3包2.4类变量第3周对象容器3.1顺序容器3.2对象数组3.3集合容器(Set)3.4散列表(Hash)第4章继承与多态4.1继承4.2子类父类关系4.3多态变量和向上造型4.4多态4.5类型系统第5周设计原则5.1城堡游戏5.2消除代码复制5.3封装5.4可扩展性5
扩散性计算机
·
2016-09-10 20:09
GSON TypeToken 解决泛型问题
Java进阶
(四)Java反射TypeToken解决泛型运行时类型擦除的问题解决在开发时,遇到了下面这条语句,不懂,然习之。
qfanmingyiq
·
2016-09-08 10:00
分布式计算第一周实验:
Java进阶
与Socket通讯
课程地址http://ss.sysu.edu.cn/~pml/dct/1_intro.html实验内容解释RuntimeException。例举它的1-2个之类,并用一个小程序验证捕获并处理异常的过程。NullPointerException-空指针引用异常IndexOutOfBoundsException-下标越界异常//测试代码:publicclasstest1{publicstaticvoi
Finnnnnnn
·
2016-09-07 16:24
作业
分布式计算学习笔记之一:
Java进阶
与 Scocket通讯
Java进阶
与Scocket通讯1.RuntimeException是JAVA在处理异常时的一个类,继承于Exception类,负责运行时抛出异常。
Climber_PG
·
2016-09-03 23:55
分布式计算
Java进阶
(四十一)多线程讲解
Java多线程讲解前言 接到菜鸟网络的电话面试,面试官让自己谈一下自己对多线程的理解,现将其内容整理如下。线程生命周期 Java线程具有五种基本状态 新建状态(New):当线程对象创建后,即进入了新建状态,如:Threadt=newMyThread(); 就绪状态(Runnable):当调用线程对象的start()方法(t.start();),线程即进入就绪状态。处于就绪状态的线程,
sunhuaqiang1
·
2016-08-30 21:00
多线程
通信
生命周期
创建
死锁
Java进阶
(四十)Java类、变量、方法修饰符讲解
Java进阶
(四十)Java类、变量、方法修饰符讲解Java类修饰符 abstract:将一个类声明为抽象类,没有实现的方法,需要子类提供方法实现。
sunhuaqiang1
·
2016-08-30 10:00
java
类
方法
变量
修饰符
Java进阶
之路_重温《java编程思想》篇(一)
前言从四月份进入公司实习到现在已经有四个多月了,并且已经转正了,当提交转正总结的时候,发现自己并没有什么大的收获,技术上也根本没有什么很大的长进。当时在学校的时候没有觉得很需要去深入学习java,认为只要是进了公司,在做项目的过程中自然慢慢就会了,然而经过了这几个月的体验,发现理想和现实差距还是很大的,在公司的项目中确实能够学到一些东西,但是学到的是有限的,而且在公司大部分时间都是在处理一些琐碎的
wguishen
·
2016-08-28 18:37
Java进阶
(五)Java I/O模型从BIO到NIO和Reactor模式
原创文章,转载请务必将下面这段话置于文章开头处(保留超链接)。本文转发自Jason’sBlog,原文链接http://www.jasongj.com/java/nio_reactor/JavaI/O模型同步vs.异步同步I/O每个请求必须逐个地被处理,一个请求的处理会导致整个流程的暂时等待,这些事件无法并发地执行。用户线程发起I/O请求后需要等待或者轮询内核I/O操作完成后才能继续执行。异步I/O
郭俊JasonGuo
·
2016-08-23 07:09
java
Java进阶
(三十九)Java集合类的排序,查找,替换操作
Java进阶
(三十九)Java集合类的排序,查找,替换操作前言 在Java方向校招过程中,经常会遇到将输入转换为数组的情况,而我们通常使用ArrayList来表示动态数组。
sunhuaqiang1
·
2016-08-07 15:00
java
Collection
Java进阶
之 如何自动生成代码
一、前言:为什么要有代码的自动生成?对于这个问题最简洁直接的回答就是:代替手动编写代码、提高工作效率。什么样的场景和代码适合用自动生成这种方式呢?做过Java服务端的朋友一定都知道代码中我们需要编写与数据库表映射的Java实体类(Entity)、需要编写与实体对应的DAO类(XxDao.java类中有包含对应实体的增、删、改、查基本操作)。在这些实体类中通常都是一些属性方法以及属性对应的get/s
春天的奋斗
·
2016-08-04 15:32
java编程学习
Java进阶
——回调机制详解及实例
引言工作关系一直都是和Android源码、系统app打交道,发现回调机制被大量使用,觉得有必要把Java回调机制的理解归纳总结一下,以便能在工作中对于源码的理解更深彻些,同时也是整理形成完整的体系,于是翻阅了”Java圣经”结合自己的理解和网上道友的一些见解,再次总结下神奇的回调。一、回调概述Java中的回调(callback)是很重要的一个机制。项目模块之间总是存在着一定的接口,从调用方式上看可
CrazyMo_
·
2016-08-02 22:35
Java
设计模式
Java进阶
——回调机制详解及实例
引言工作关系一直都是和Android源码、系统app打交道,发现回调机制被大量使用,觉得有必要把Java回调机制的理解归纳总结一下,以便能在工作中对于源码的理解更深彻些,同时也是整理形成完整的体系,于是翻阅了”Java圣经”结合自己的理解和网上道友的一些见解,再次总结下神奇的回调。一、回调概述Java中的回调(callback)是很重要的一个机制。项目模块之间总是存在着一定的接口,从调用方式上看可
CrazyMo_
·
2016-08-02 22:00
java
callback
回调接口
回调机制
回调方法
Java进阶
(三十八)快速排序
Java进阶
(三十八)快速排序前言 有没有既不浪费空间又可以快一点的排序算法呢?那就是“快速排序”啦!光听这个名字是不是就觉得很高端呢。
sunhuaqiang1
·
2016-07-28 21:00
java
快速排序
Java进阶
(三十七)java 自动装箱与拆箱
Java进阶
(三十七)java自动装箱与拆箱前言 这个是jdk1.5以后才引入的新的内容。
sunhuaqiang1
·
2016-07-23 17:00
java
拆箱
自动装箱
Java进阶
(三十六)深入理解Java的接口和抽象类
Java进阶
(三十六)深入理解Java的接口和抽象类前言 对于面向对象编程来说,抽象是它的一大特征之一。在Java中,可以通过两种形式来体现OOP的抽象:接口和抽象类。
sunhuaqiang1
·
2016-07-23 15:00
java
接口
抽象类
区别
Java进阶
之路——从初级程序员到架构师
怎样学习才能从一名Java初级程序员成长为一名合格的架构师,或者说一名合格的架构师应该有怎样的技术知识体系,这是不仅一个刚刚踏入职场的初级程序员也是工作三五年之后开始迷茫的老程序员经常会问到的问题。希望这篇文章会是你看到过的最全面最权威的回答。from:http://blog.csdn.net/anmiaochu/article/details/51970091一:编程基础不管是C还是C++,不管
猩猩之火
·
2016-07-22 17:32
java
Java进阶
之路——从初级程序员到架构师,从小工到专家
文章首发在我的微信订阅号:Java北京(java_bj),欢迎关注。怎样学习才能从一名Java初级程序员成长为一名合格的架构师,或者说一名合格的架构师应该有怎样的技术知识体系,这是不仅一个刚刚踏入职场的初级程序员也是工作三五年之后开始迷茫的老程序员经常会问到的问题。希望这篇文章会是你看到过的最全面最权威的回答。一:编程基础不管是C还是C++,不管是Java还是PHP,想成为一名合格的程序员,基本的
FieldSheng
·
2016-07-20 21:39
Java进阶
之路——从初级程序员到架构师,从小工到专家
文章首发在我的微信公众号:Java北京(java_bj),欢迎关注。怎样学习才能从一名Java初级程序员成长为一名合格的架构师,或者说一名合格的架构师应该有怎样的技术知识体系,这是不仅一个刚刚踏入职场的初级程序员也是工作三五年之后开始迷茫的老程序员经常会问到的问题。希望这篇文章会是你看到过的最全面最权威的回答。一:编程基础不管是C还是C++,不管是Java还是PHP,想成为一名合格的程序员,基本的
京城阿飞
·
2016-07-20 16:55
Java
Java进阶
(三十五)java int与integer的区别
Java进阶
(三十五)javaint与Integer的区别前言 int与Integer的区别从大的方面来说就是基本数据类型与其包装类的区别: int是基本类型,直接存数值,而Integer
sunhuaqiang1
·
2016-07-19 19:00
java
Integer
int
【
Java进阶
】利用APT优雅的实现统一日志格式
统一日志格式的几种方式无论是搭建日志平台还是进行大数据分析,统一日志格式都是一个重要的前提条件。假设要统一成下面的日志格式,日志格式:[{系统}|{模块}]{描述}[param1=value1$param2=value2],例如:[API|Weixin]Weixinsendmessagefailed.[senderId=1234$receiverId=5678]常见的方法有:方法1:每次记录日志时
天府云创
·
2016-07-15 10:18
[Android Pro]
Java进阶
学习:jar打包详解
jar文件听说过吗,没有?或者陌生!好,没关系,这就是我们的第一站:打包发布。为什么会有这个玩意呢,首先,这是jar的全称:JavaTMArchive(JAR)file,是的,就是java存档文件。这有点类似zip文件,想一想它是干什么的用的呢,压缩!?没错就是要压缩,将我们原先零散的东西放到一下,重新组织,所有这些目的只有一个:方便!好了,不用管他是怎么压缩的,我们的重点是哪些是我们要压缩的(
demoblog
·
2016-07-06 23:00
【
Java进阶
五】对象序列化和拷贝
Java拷贝问题Java中有个接口叫做Cloneable,实现该接口的类都具有克隆(被拷贝)的能力。拷贝的话在性能方面会比我们直接new一个对象的性能要好,特别是在大对象的生成上,性能提升非常明显。原因是拷贝是在内存中进行浅拷贝。浅拷贝浅拷贝的基本规则如下:基本类型如果变量是基本,则拷贝变量的值,比如:int、float等对象如果变量是一个实例对象,则拷贝其地址的引用。也就是说拷贝之后,新对象和原
Save_Helot
·
2016-07-04 11:00
java
对象
深拷贝和浅拷贝
【
Java进阶
四】抽象类和接口
抽象类抽象类是在定义的时候使用abstract关键字修饰的类。抽象类要注意以下几点:抽象类不能被实例化,实例化工作应该在子类完成。抽象方法必须由子类来进行重写。只要包含一个抽象方法的类,他就必须是抽象类,不管是否含有其他正常的方法。子类的抽象方法不能和抽象类的抽象方法同名abstract不能和final并列修饰同一个类abstract不能和private、static、final并列修饰同一个方法
Save_Helot
·
2016-07-03 22:00
java
面试
抽象类和接口
Java进阶
(三十三)java基础-filter
java基础-filter 我们先看看没有filter的时候,整个web客户端-服务端的一个流程。 接下来我们再看看引入了filter之后的Uml图。尝试分析这两者之间的差别。 filter从哪里来? 是在servlet2.3规范中加入的。 filter的生命周期? 同servlet的生命周期相同。 filter的执行过程? 看到这里有没有想起我们的数据库结构关于
sunhuaqiang1
·
2016-06-30 21:00
java
filter
Java进阶
(三十二) HttpClient使用详解
Java进阶
(三十二) HttpClient使用详解 Http协议的重要性相信不用我多说了,HttpClient相比传统JDK自带的URLConnection,增加了易用性和灵活性(具体区别,日后我们再讨论
sunhuaqiang1
·
2016-06-24 11:00
java
web服务
服务调用
Java进阶
(三十一) Web服务调用
Java进阶
(三十一)Web服务调用前言 有朋友问了一个问题:如何调用已知的音乐服务接口,服务文档如下: https://www.evernote.com/shard/s744/sh/c37cd503
sunhuaqiang1
·
2016-06-24 11:00
java
web服务
服务调用
Java进阶
学习第24天——动态代理与类加载器
文档版本开发工具测试平台工程名字日期作者备注V1.02016.06.17lutianfeinone动态代理代理对象存在的价值:主要用于拦截对真实业务对象的访问。代理对象有什么方法?现在要生成某一个对象的代理对象,这个代理对象通常也要编写一个类来生成,所以首先要编写用于生成代理对象的类。如何编写生成代理对象的类,两个要素:代理谁如何生成代理对象代理谁?设计一个类变量,以及一个构造函数,记住代理类代理
lutianfeiml
·
2016-06-21 10:00
动态代理
AOP
代理模式
类加载器
泛型反射
No_0616
Java进阶
学习——Java注解学习
文档版本开发工具测试平台工程名字日期作者备注V1.02016.06.16lutianfeinone注解什么是注解,它有什么作用?@xxx就是一个注解。注释:它是用于描述当前代码功能,是给程序员使用的。注解:它是描述程序如果运行,是给编译器,解释器,jvm使用。jdk中自带三个注解1.@Override:是给编译器使用,用于描述当前的方法是一个重写的方法。注意:在jdk1.5与jdk1.6中有区别j
lutianfeiml
·
2016-06-17 00:00
java
元注解
注解
注解案例
Java进阶
(三十) 判断字符串编码类型
java判断字符串编码类型publicstaticStringgetEncoding(Stringstr){ Stringencode="GB2312"; try{ if(str.equals(newString(str.getBytes(encode),encode))){ Strings=encode; returns; } }catch(Exceptionexception){ } enco
sunhuaqiang1
·
2016-06-12 16:00
java
编码
Java进阶
学习第二十三天——国际化与AJAX、JSON
文档版本开发工具测试平台工程名字日期作者备注V1.02016.06.10lutianfeinone国际化软件的国际化:软件开发时,要使它能同时应对世界不同地区和国家的访问,并针对不同地区和国家的访问,提供相应的、符合来访者阅读习惯的页面或数据。国际化又称为i18n:internationalization软件实现国际化,需具备哪些特征:对于程序中固定使用的文本元素,例如菜单栏、导航条等中使用的文本
lutianfeiml
·
2016-06-12 09:00
json
Ajax
国际化
省市级联案例
java进阶
(三)-- 类型信息与反射机制
前段时间在看《Thinkinginjava》,由于之前一直都在写业务代码,包括交易、对账、银行利息理财等等,忽略了对底层支撑代码的研究,每次看到反编译出来的依赖工程后总会遇到一些类型信息的代码,也没有深入去研究,看完类型信息与反射机制后,有种茅塞顿开之感,写写个人感受。 首先介绍下后面会经常用到的概念RTTI(Run-TimetypeIdentification),运行时类型信息。
JordanInShenzhen
·
2016-06-10 12:00
java
技术
对象
Class
java进阶
(三)-- 类型信息与反射机制
前段时间在看《Thinkinginjava》,由于之前一直都在写业务代码,包括交易、对账、银行利息理财等等,忽略了对底层支撑代码的研究,每次看到反编译出来的依赖工程后总会遇到一些类型信息的代码,也没有深入去研究,看完类型信息与反射机制后,有种茅塞顿开之感,写写个人感受。 首先介绍下后面会经常用到的概念RTTI(Run-TimetypeIdentification),运行时类型信息。
JordanInShenzhen
·
2016-06-10 12:00
java
技术
对象
Class
Java进阶
学习第二十二天——上传与下载
文档版本开发工具测试平台工程名字日期作者备注V1.02016.06.05lutianfeinoneServlet规范中servlet有初始化参数Filter有初始化参数Listener没有初始化参数,要使用,在开发中一般使用servletContext的初始化参数.文件上传问题:什么是文件上传?为什么使用文件上传?就是将客户端资源,通过网络传递到服务器端。就是因为数据比较大,我们必须通过文件上传才
鹿天斐
·
2016-06-08 10:17
Java
Java进阶
文件上传
文件下载
网盘项目
java
Java进阶
学习第二十二天——上传与下载
文档版本开发工具测试平台工程名字日期作者备注V1.02016.06.05lutianfeinoneServlet规范中servlet有初始化参数Filter有初始化参数Listener没有初始化参数,要使用,在开发中一般使用servletContext的初始化参数.文件上传问题:什么是文件上传?为什么使用文件上传?就是将客户端资源,通过网络传递到服务器端。就是因为数据比较大,我们必须通过文件上传才
lutianfeiml
·
2016-06-08 10:00
java
文件上传
文件下载
网盘项目
上一页
34
35
36
37
38
39
40
41
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他