- 博客(13)
- 资源 (2)
- 问答 (1)
- 收藏
- 关注
翻译 如何在java中创建不可变类?
原文【如何在java中创建不可变类?】地址今天我们将学习如何在java中创建不变的类。不可变对象是在初始化之后状态不变的实例。例如,String是一个不可变类,一旦实例化,它的值不会改变。不可改变的类对于缓存的目的是有益的,因为你不需要担心价值的变化。不可变类的其他好处是它本质上是线程安全的,所以在多线程环境的情况下,您不需要担心线程安全。在这里,我提供了一种通过一个例子来创建Java中不可变类的方
2017-03-24 15:25:18 926
翻译 自定义Queue
Queue(队列)是一种特殊类型的集合,旨在使用先进先出方式处理和排序之前保存元素。下面使用 Array 实现 Queue,并提供诸如enqueue(obj),dequeue()和isEmpty()等基本功能。/** * <p></p> * * @author 三产 * @version 1.0 * @date 2017-03-24 * @QQGroup 213732117 * @we
2017-03-24 15:05:15 750
原创 自己实现 ArrayList
英文原文ArrayList 类似于 Array 对象,但是当列表中的对象数量增加时,它提供了动态空间分配的功能。在 Array 对象中,我们需要在初始化时提供数组的大小,但这并不是 ArrayList 所必需的。实际上,当您初始化ArrayList时,它将自动将其容量分配为10。这里我用 Array 对象实现ArrayList,并提供 get(index),add(object) 和 remove(
2017-03-24 14:50:07 608
翻译 Java Clone
Java类自带了本地的clone()方法,该方法会返回现有实例的副本。如果要使用Java克隆,必须实现java.lang.Cloneable接口,以便它不会在运行时抛出CloneNotSupportedException。 如果clone()函数会返回对象副本,那么在什么情况下我们需要重写它? 让我们运行下面的java类来更好的理解。import java.util.HashMap;impor
2017-03-24 13:25:53 415
转载 全面解读Math对象及位运算
本文转载自:"https://segmentfault.com/a/1190000008786789" title="全面解读Math对象及位运算">全面解读Math对象及位运算Math方法和位运算几乎是被忽略得最严重的知识点, 和正则一样, 不用不知道, 一用到处查. 为了告别这种低效的编程模式, 我特地总结此篇, 系统梳理了这两个知识点. 以此为册, 助你攻破它们.原文: "http://
2017-03-23 13:43:06 1865
原创 Gradle 深度刨析
基本构建块每个 Gradle 构建都包含三个基本概念:project、task 和 property。 每个构建包含至少一个 project、一个或多个 task。project 和 task 暴露的属性可以用来控制构建。 Gradle 的核心组件直接的依赖关系如下: 在多项目构建中,一个 project 可以依赖于其他的 project 。在同一个 project 中一个 task 可以依
2017-03-22 17:01:13 681
原创 Gradle Wrapper
Why试想一下,你做好了一个 Gradle 构建的 Web 应用,并且要分享给他人,让他人可以参与到开发中,但对方下载代码后安装了 Gradle 却发现应用未能正常使用。经过多次长时候才发现原来是 Gradle 运行时版本不兼容。怎样解决这个问题呢?WhatGradle 包装器是 Gradle 的核心特性,能够让机器在没有安装 Gradle 运行时的情况下运行 Grade 构建。它也让构建脚本运
2017-03-14 16:19:50 764
原创 使用Gradle在嵌入式Web容器Jetty中运行Web应用
在使用Gradle第一次构建Web应用的代码基础上我们进行修改Jetty 插件在 Maven 等构建的项目中,我们要使用 Jetty 做嵌入式 Web 容器运行 Web 应用,通常需要添加 Jetty 相关依赖以及进行类似下面代码配置: package com.coderknock.jettystudy; import org.eclipse.jetty.server.Server;
2017-03-13 16:06:34 2647
原创 使用Gradle自定义配置构建Web应用
自定义配置War 插件默认使用 GBK 编码做为代码编码。当我们的代码中有中文字符,并且代码编码为非 GBK 编码时会报错编码GBK的不可映射字符此时我们需要自定义项目编译编码 “`groovy //设置编码 [compileJava, compileTestJava].options.encoding = ‘UTF-8’约定的项目结构也许并不能满足我们项目的情景,我们可以通过自定义配置
2017-03-13 15:21:54 669
原创 使用Gradle第一次构建Web应用
Gradle Web 插件Gradle 提供了打包 war 包的插件,可以将 Web 应用部署到本地 Servlet 容器中。使用 War 和 Jetty 插件Gradle 对构建和运行 Web 应用提供了对应扩展的支持。 下面我们介绍 War 和 Jetty 插件。 War 插件扩展自 Java 插件,为 Web 应用部署和组装 War 包添加了约定和支持。 Jetty 是一个流行的轻量级开
2017-03-13 14:31:41 4020 3
原创 使用Gradle自定义配置构建Java程序
自定义源代码路径、编译输出路径某些情况下默认的源代码路径等可能不符合我们项目的结构,这时除了修改项目结构外,我们还可以自定义源代码路径等配置。build.gradle//使用 Java 插件//默认在 src/main/java下查找源代码apply plugin: 'java'//定义项目的版本version = 0.1//设置 Java 兼容版本sourceCompatibility
2017-03-10 17:16:56 875
原创 第一次使用Gradle构建Java程序
目录结构│ build.gradle└─src └─main └─java └─com └─manning └─gia └─todo │ ToDoApp.java
2017-03-10 17:16:25 3753
原创 第一个 Gradle 脚本及简单命令
第一个 Gradle 脚本及简单命令task helloworld { doLast { print 'Hello world!' }}/* <<这种方式将在 Gradle5.0 中删除,不建议使用 */task helloworldSort << { print 'Hello world!'}task startSession << { pr
2017-03-10 17:14:48 3764
TA创建的收藏夹 TA关注的收藏夹
TA关注的人