- 浏览: 397745 次
- 性别:
- 来自: 杭州
文章分类
- 全部博客 (760)
- 股票日志 (26)
- Selenium (0)
- selenium 2 环境的搭建 (1)
- 并发 (7)
- 框架开发 (1)
- 动态代理 (2)
- Struts2 (2)
- POI (2)
- jdk (3)
- maven (31)
- spring (35)
- mysql (31)
- 工作机会 (3)
- xtream (1)
- oracle dbms_metadata GET_DDL (0)
- SSI (1)
- DB (61)
- powermock (4)
- java 基础 (25)
- 多线程 (11)
- 高手 (2)
- java 底层 (2)
- 专业网站 (1)
- 开发联想 (1)
- 开发联想 (1)
- bat文件 (2)
- 清queue 语句 (1)
- 清queue 语句 (1)
- jquery (7)
- html5 (1)
- Jenkins (10)
- Linux (17)
- 工作issue (2)
- tomcat log (3)
- jvm (23)
- 项目细节 (0)
- oracle (41)
- 泛型 (3)
- 新知识点 (1)
- 数据库ddl 语句 (0)
- AQ (2)
- jms (0)
- 网络资源 (6)
- github (6)
- Easymock (1)
- Dom 解析XML (1)
- windows命令 (2)
- java (7)
- 正则表达式 (5)
- sequence (1)
- oracle 表meta信息 (1)
- 小工具技巧 (1)
- 辅助工具 (1)
- Junit (1)
- 泛型 generic (2)
- Java程序设计 (1)
- cglib (2)
- 架构师之路 (1)
- 数据库连接池 (5)
- c3p0 (1)
- eclipse使用 (1)
- oracle sql plus (1)
- 码农人生 (3)
- SVN (15)
- sqlplus (2)
- jsoup (1)
- 网络爬虫 (2)
- 新技能 (1)
- zookeeper (4)
- hadoop (1)
- SVNKIT (1)
- 从工具到知识点的整理 (1)
- log4j (13)
- 读文件 (0)
- 转义字符 (1)
- command (1)
- web service (3)
- 锁 (1)
- shell 脚本 (1)
- 遇到的错误 (2)
- tomcat (14)
- 房产 (5)
- bootstrap jquery ui (1)
- easyui (2)
- 个人征信 (1)
- 读写分离 (1)
- 备份 (1)
- rmi (6)
- webservice (1)
- JMX (4)
- 内存管理 (3)
- java设计 (1)
- timer (1)
- lock (2)
- concurrent (2)
- collection (1)
- tns (1)
- java基础 (15)
- File (1)
- 本机资源 (1)
- bat (1)
- windows (4)
- 数据结构 (3)
- 代码安全 (1)
- 作用域 (1)
- 图 (2)
- jvm内存结构 (1)
- 计算机思想 (1)
- quartz (6)
- Mongo DB (2)
- Nosql (4)
- sql (5)
- 第三方Java 工具 jar 项目 (2)
- drools (1)
- java swing (2)
- 调用console (1)
- runtime (1)
- process (1)
- swing (2)
- grouplayout (1)
- dubbo (0)
- bootstrap (0)
- nodejs (2)
- SVN hooks (1)
- jdbc (3)
- jdbc error (1)
- precedure (1)
- partition_key (1)
- active mq (1)
- blob (2)
- Eclipse (6)
- web server (1)
- bootstrapt (2)
- struts (1)
- ajax (1)
- js call back (1)
- 思想境界拓展 (1)
- JIRA (1)
- log (1)
- jaxb (3)
- xml java互相转换 (1)
- 装修 (2)
- 互联网 (2)
- threadlocal (3)
- mybatis (22)
- xstream (1)
- 排序 (1)
- 股票资源 (1)
- RPC (2)
- NIO (3)
- http client (6)
- 他人博客 (1)
- 代理服务器 (1)
- 网络 (2)
- web (1)
- 股票 (5)
- deadlock (1)
- JConsole (2)
- activemq (3)
- oralce (1)
- 游标 (1)
- 12月13日道富内部培训 (0)
- grant (1)
- 速查 (2)
- classloader (4)
- netty (4)
- 设计模式 (2)
- 缓存 (2)
- ehcache (2)
- framework (1)
- 内存分析 (2)
- dump (1)
- memory (2)
- 多高线程,并发 (1)
- hbase (2)
- 分布式系统 (1)
- socket (3)
- socket (1)
- 面试问题 (1)
- jetty (2)
- http (2)
- 源码 (1)
- 日志 (2)
- jni (1)
- 编码约定 (1)
- memorycache (1)
- redis (13)
- 杂谈 (1)
- drool (1)
- blockingqueue (1)
- ScheduledExecutorService (1)
- 网页爬虫 (1)
- httpclient (4)
- httpparser (1)
- map (1)
- 单例 (1)
- synchronized (2)
- thread (1)
- job (1)
- hashcode (1)
- copyonwriteArrayList (2)
- 录制声音 (1)
- java 标准 (2)
- SSL/TLS (1)
- itext (1)
- pdf (1)
- 钻石 (2)
- sonar (1)
- unicode (1)
- 编码 (4)
- html (1)
- SecurityManager (1)
- 坑 (1)
- Restful (2)
- svn hook (1)
- concurrentHashMap (1)
- 垃圾回收 (1)
- vbs (8)
- visual svn (2)
- power shell (1)
- wmi (3)
- mof (2)
- c# (1)
- concurrency (1)
- 劳动法 (1)
- 三国志游戏 (2)
- 三国 (1)
- 洪榕 (2)
- 金融投资知识 (1)
- motan (1)
- tkmybatis mapper (1)
- 工商注册信息查询 (1)
- consul (1)
- 支付业务知识 (2)
- 数据库备份 (1)
- 字段设计 (1)
- 字段 (1)
- dba (1)
- 插件 (2)
- PropEdit插件 (1)
- web工程 (1)
- 银行业知识 (2)
- 国内托管银行 (1)
- 数据库 (1)
- 事务 (2)
- git (18)
- component-scan (1)
- 私人 (0)
- db2 (14)
- alias (1)
- 住房 (1)
- 户口 (1)
- fastjson (1)
- test (6)
- RSA (2)
- 密钥 (1)
- putty (1)
- sftp (1)
- 加密 (1)
- 公钥私钥 (3)
- markdown (1)
- sweet (1)
- sourcetree (1)
- 好工具 (1)
- cmd (1)
- scp (1)
- notepad++ (1)
- ssh免密登录 (1)
- https (1)
- ssl (2)
- js (2)
- h2 (1)
- 内存 (2)
- 浏览器 (1)
- js特效 (1)
- io (1)
- 乱码 (1)
- 小工具 (1)
- 每周技术任务 (1)
- mongodb (7)
- 内存泄漏 (1)
- 码云 (2)
- 如何搭建java 视频服务器 tomcat (1)
- 资源 (1)
- 书 (1)
- 四色建模法 (1)
- 建模 (1)
- 配置 (1)
- 职位 (1)
- nginx (1)
- excel (1)
- log4j2 (2)
- 做菜 (1)
- jmap (1)
- jspwiki (1)
- activiti (1)
- 工作流引擎 (1)
- 安卓 (1)
- acitviti 例子 (1)
- 二维码 (1)
- 工作流 (1)
- powerdesign (2)
- 软件设计 (1)
- 乐观锁 (1)
- 王者荣耀 (1)
- session (2)
- token (5)
- cookie (4)
- springboot (24)
- jwt (2)
- 项目路径 (1)
- magicbook (1)
- requestType (1)
- json (2)
- swagger (1)
- eolinker (1)
- springdata (1)
- springmvc (1)
- controlleradvice (1)
- profile (1)
- 银行四要素 (1)
- 支付人员资源 (1)
- 支付渠道 (1)
- yaml (1)
- 中文编码 (1)
- mongo (2)
- serializable (1)
- 序列化 (1)
- zyd (1)
- unittest (1)
- 工具 (1)
- Something (1)
- 通达信 (1)
- protobuf (1)
- 算法 (1)
- springcloud (2)
- hikari (1)
- rocketmq (7)
- cachecloud (1)
- serfj (1)
- axure (1)
- lombok (1)
- 分布式锁 (1)
- 线程 (2)
- 同步代码块 (1)
- cobar (1)
- mq (1)
- rabbitmq (1)
- 定时执行 (1)
- 支付系统 (3)
- 唱歌 (1)
- elasticjob (1)
- 定时任务 (1)
- 界面 (1)
- flink (2)
- 大数据 (1)
- 接私活 (0)
- 内部培训 (2)
最新评论
-
dannyhz:
做股票从短线 试水,然后 慢慢发现 波段和 中期的故事可挖, ...
搭台唱戏 -
dannyhz:
http://developer.51cto.com/art/ ...
如何自己开发框架 它的注意点是什么
行为由基类控制
一, 新建对象,比如
我要求 在 调用端 必须要先 传入参数 给一个类,才能实例化出来,
那可以把要生成的 类 设计成 只有带参构造函数的类。
如下:
public class AdaptA {
public AdaptA(String sign){
}
}
public class Client {
public static void main(String[] args) {
new AdaptA("A"); 编译通过
new AdaptA(); 编译报错
}
}
二, 使用泛型来约束 参数以及返回值的 使用类型的 范围, 把内部模型控制好,一般以接口作为参数, 而把具体的方法进行 接口级别的定义, 让后面的调用 在编译期内就能规范,不至于发生运行期的异常
一, 新建对象,比如
我要求 在 调用端 必须要先 传入参数 给一个类,才能实例化出来,
那可以把要生成的 类 设计成 只有带参构造函数的类。
如下:
public class AdaptA {
public AdaptA(String sign){
}
}
public class Client {
public static void main(String[] args) {
new AdaptA("A"); 编译通过
new AdaptA(); 编译报错
}
}
二, 使用泛型来约束 参数以及返回值的 使用类型的 范围, 把内部模型控制好,一般以接口作为参数, 而把具体的方法进行 接口级别的定义, 让后面的调用 在编译期内就能规范,不至于发生运行期的异常
相关推荐
在顶层设计中,我们通常会选用像Git这样的分布式版本控制系统,它支持多人并行开发,便于代码的版本控制和回溯,同时也为代码审查和合并提供了强大的支持。通过设定严格的代码提交规范和自动化测试,可以保证源码...
在Java中,异常是指程序执行过程中出现的非正常情况,例如除以零、数组越界、文件不存在等。Java提供了try-catch语句来捕捉和处理异常。 throw和throws的区别与联系 throw和throws是Java中用于异常处理的两个...
顶层窗口通常被称为框架(Frame),在AWT中,对应的类是`Frame`,而在Swing中则是`JFrame`。`JFrame`继承自`Frame`,并提供了更多的特性与功能。 创建一个简单的GUI框架可以通过以下步骤实现: 1. 引入必要的Swing...
在Swing中,顶层窗口通常使用JFrame表示,它继承自AWT的Frame类,但其修饰部件由Swing绘制,而不是由窗口系统绘制。 创建一个简单的Java Swing框架,你需要导入javax.swing.*包,并定义一个继承自JFrame的类。在类...
10. **Java程序类型**:Java程序分为应用程序(Application)和小程序(Applet),前者独立运行,后者在Web浏览器中运行。 11. **源文件与字节码**:Java源代码文件扩展名为`.java`,编译后生成`.class`字节码文件...
Java 集合框架是 Java 语言中提供的一种统一的标准体系结构,用于表示和操作集合。集合框架包含三大块内容:对外的接口、接口的实现和对集合运算的算法。 1. 接口:Collection 顶层接口是集合框架的核心接口,定义...
在源码中,你将看到如何定义类,创建对象,以及如何使用继承、封装和多态性来实现面向对象的设计原则。 3. **异常处理**:Java中的异常处理机制有助于编写健壮的代码。通过try-catch-finally块,你可以捕获并处理...
在Java集合框架中,主要的顶层接口包括Collection和Map两大类。Collection接口是单列集合的根接口,它又分为Set、List和Queue三个主要的子接口。Set集合中的元素是唯一的,不允许重复;List集合是有序的,可以包含...
文档中提到了使用Java Swing框架进行图形用户界面(GUI)的设计。Swing是Java的一个图形用户界面工具包,允许开发者使用Java编写独立的GUI应用程序。 - **JFrame窗口**:GUI设计的核心是JFrame,一个顶层容器,用于...
在Swing中,顶层容器是最基本的界面框架,用于承载所有的子组件。常见的顶层容器包括: - **JFrame**:用于创建类似于Windows系统的主窗口应用。 - **JDialog**:用于创建对话框,通常用于提示用户输入或确认信息。...
在Java中,JFrame是一个顶层窗口,可用于创建基本的窗口或对话框。 - PuzzlePad.java 可能是一个Java类,用来表示魔板游戏的主体部分,可能包含游戏的逻辑和状态。 - SquarePoint.java 看起来是表示魔板游戏中单个...
Java Swing 是Java编程语言中用于构建图形用户界面(GUI)的框架,它是AWT(Abstract Window Toolkit)的增强版。在Java 11中,Swing仍然是开发桌面应用的重要工具,提供了丰富的组件和灵活的设计机制。 1. **图形...
Java程序设计A卷 - Java基础知识点 以下是根据给定的文件信息生成的相关知识点: 一、Java语言基础 * Java源程序的文件扩展名是 `.java`(题目1) * Java语言规定构造方法名与类名必须相同,且构造方法没有返回值...
在Java集合框架中,`Collection`接口是所有单值容器的基础接口,而`Map`接口则是用于存储键值对的接口。这两个接口构成了Java集合框架的基础。 `Collection`接口定义了基本的集合操作,如添加、删除、检查和遍历...
通过上述分析,我们可以看出Java在GUI设计方面提供了强大的支持,尤其是Swing组件库,它不仅拥有丰富的组件类型,而且具有良好的跨平台性和高度的可定制性。对于初学者来说,理解`java.awt`和`javax.swing`的基本...
1. **JFrame**:作为整个程序的主窗口容器,是Swing框架中的顶层容器。 2. **JTextField**:文本框组件,用于用户输入文本信息,如用户名等。 3. **JPasswordField**:密码输入框,用于安全地输入密码。 4. **JLabel...
### Java图形界面编程框架详解 #### 一、引言 Java图形用户界面(GUI)编程是一种常见的软件开发技术,它允许开发者创建具有图形界面的应用程序。对于初学者来说,理解和掌握Java GUI编程的基础是非常重要的。本文...
Spring框架是Java开发中广泛使用的轻量级框架,其设计理念和设计模式对于理解和有效利用该框架至关重要。Spring的核心在于它的依赖注入(Dependency Injection,DI)机制,这使得开发者能够将对象的创建和组装过程从...
软件架构指的是软件的顶层结构,而架构设计是为了应对软件系统的复杂度而提出的解决方案,并不是所有的项目都需要架构,在错误的地方去做架构只会本末倒置 然后说java架构师,那就是在java领域内解决这个问题的人员...