【java新知识系列 三】教程文章相关的互联网学习教程文章

I/O系列教材 (五)- Java的字符流 Reader Writer

Reader字符输入流 Writer字符输出流 专门用于字符的形式读取和写入数据 步骤1:使用字符流读取文件步骤2:使用字符流把字符串写入到文件步骤3:练习-文件加密步骤4:答案-文件加密步骤5:练习-文件解密步骤6:答案-文件解密 步骤 1 : 使用字符流读取文件 FileReader 是Reader子类,以FileReader 为例进行文件读取package stream; import java.io.File; import java.io.FileReader; import java.io.IOException; public class TestS...

日期系列教材 (三)- 如何使用Java的Calendar类

Calendar类即日历类,常用于进行“翻日历”,比如下个月的今天是多久 步骤1:Calendar与Date进行转换步骤2:翻日历步骤3:练习-Calendar步骤4:答案-Calendar 示例 1 : Calendar与Date进行转换 采用单例模式获取日历对象Calendar.getInstance();package date; ? // import java.util.Calendar; import java.util.Date; ? public class TestDate { ? ????public static void main(String[] args) { ????????//采用单例模式获取日历对...

Java深海拾遗系列(8)--- 10 个最难回答的 Java 问题【图】

1.为什么等待和通知是在 Object 类而不是 Thread 中声明的? 一个棘手的 Java 问题,如果 Java编程语言不是你设计的,你怎么能回答这个问题呢。Java编程的常识和深入了解有助于回答这种棘手的 Java 核心方面的面试问题。 为什么 wait,notify 和 notifyAll 是在 Object 类中定义的而不是在 Thread 类中定义 这是有名的 Java 面试问题,招2~4年经验的到高级 Java 开发人员面试都可能碰到。 这个问题的好在它能反映了面试者对等待通知...

Java深海拾遗系列(9)--- 关于Java序列化的10个面试问题

大多数商业项目使用数据库或内存映射文件或只是普通文件, 来满足持久性要求, 只有很少的项目依赖于 Java 中的序列化过程。无论如何,这篇文章不是 Java 序列化教程或如何序列化在 Java 的对象, 但有关序列化机制和序列化 API 的面试问题, 这是值得去任何 Java 面试前先看看以免让一些未知的内容惊到自己。 对于那些不熟悉 Java 序列化的人, Java 序列化是用来通过将对象的状态存储到带有.ser扩展名的文件来序列化 Java 中的对象的过...

Java面试系列04:Java基础之集合面试问题解答(上)【图】

1. ArrayList 和 Vector 的区别。 1) Vector的方法都是同步的(Synchronized),是线程安全的(thread-safe),而ArrayList的方法不是,由于线程的同步必然要影响性能,因此,ArrayList的性能比Vector好。 2) 当Vector或ArrayList中的元素超过它的初始大小时,Vector会将它的容量翻倍,而ArrayList只增加50%的大小,这样,ArrayList就有利于节约内存空间。 2. 说说 ArrayList,Vector, LinkedList 的存储性能和特性。 ArrayList和Vector都...

数字与字符串系列教材 (六)- Java中的字符串String详解

步骤1:创建字符串步骤2:final步骤3:immutable步骤4:字符串格式化步骤5:字符串长度步骤6:练习-随机字符串步骤7:答案-随机字符串步骤8:练习-字符串数组排序步骤9:答案-字符串数组排序步骤10:练习-穷举法破解密码步骤11:答案-穷举法破解密码 示例 1 : 创建字符串 字符串即字符的组合,在Java中,字符串是一个类,所以我们见到的字符串都是对象 常见创建字符串手段: 1. 每当有一个字面值出现的时候,虚拟机就会创建一个字符串 2. 调...

接口与继承系列教材 (九)- Java 抽象类详解

在类中声明一个方法,这个方法没有实现体,是一个“空”方法 这样的方法就叫抽象方法,使用修饰符“abstract" 当一个类有抽象方法的时候,该类必须被声明为抽象类 步骤1:抽象类步骤2:抽象类可以没有抽象方法步骤3:抽象类和接口的区别步骤4:练习-抽象类步骤5:答案-抽象类 步骤 1 : 抽象类 为Hero增加一个抽象方法 attack,并且把Hero声明为abstract的。 APHero,ADHero,ADAPHero是Hero的子类,继承了Hero的属性和方法。 但是各自的...

HelloWorld系列教材 (四)- 使用ecipse创建第一个 java project【图】

HelloWorld系列教材 (四)- 使用ecipse创建第一个 java project 使用Eclipse创建第一个 java project 步骤1:打开 eclipse 步骤2:选择工作区 步骤3:创建java项目 步骤4:项目名称输入j2se 步骤5:创建成功后看到的界面 步骤 1 : 打开 eclipse 这是截至目前为止的eclipse最新版本4.5 MARS步骤 2 : 选择工作区 使用在命令行Hello World中的项目目录e:\project 除了第一次启动eclipse的时候能够选择工作区之外,还可以在启动之后,通过如...

JAVA系列教程--Object Monitor与Synchronized关键字【图】

java Object Monitor机制 每个java对象都是一个monitor object,通过该monitor object, 可以实现线程之间的阻塞和唤醒具体转换过程:当线程需要获取Object Monitor的锁时,进入Entry Set如果线程获取锁成功,则进入The Owner状态,每个Object的Ower同一时刻只能有一个线程进入如果The Owner调用了wait()或者wait(timeout)方法,则当前线程释放Owner并进入Wait Set当某个线程在进入Owner之后调用了Notify()或notifyAll()方法,则一个...

类和对象系列教材 (五)- Java 中的this 是什么意思?

this这个关键字,相当于普通话里的“我” 小明说 “我吃了” 这个时候,“我” 代表小明 小红说 “我吃了” 这个时候,“我” 代表小红 "我"代表当前人物 this这个关键字,相当于普通话里的“我” this即代表当前对象 步骤1:this代表当前对象步骤2:通过this访问属性步骤3:通过this调用其他的构造方法步骤4:练习-构造方法(this)步骤5:答案-构造方法(this)步骤?1?:?this代表当前对象public class Hero { ???? ????String name;?//姓...

类和对象系列教材 (六)- Java中的传参详解

变量有两种类型 基本类型 和类类型 参数也是变量,所以传参分为?基本类型传参?类类型传参 步骤1:基本类型传参步骤2:引用与=步骤3:类类型传参步骤4:练习-传参步骤5:答案-传参步骤?1?:?基本类型传参基本类型传参?在方法内,无法修改方法外的基本类型参数public class Hero { ??????? ????String name;?//姓名 ??????? ????float hp;?//血量 ??????? ????float armor;?//护甲 ??????? ????int moveSpeed;?//移动速度 ???? ????p...

类和对象系列教材 (七)- Java中的包 package

包: package 把比较接近的类,规划在同一个包下 步骤1:把比较接近的类,规划在同一个包下步骤2:使用其他包下的类,必须import步骤3:练习-包步骤4:答案-包步骤?1?:?把比较接近的类,规划在同一个包下Hero,ADHero 规划在一个包,叫做charactor(角色)Item,Weapon规划在另一个包下,叫做 property(道具)在最开始的地方声明该类所处于的包名package charactor;?//在最开始的地方声明该类所处于的包名 public class Hero { ??????? ?...

类和对象系列教材 (一)- 什么是Java中的引用? 

引用的概念,如果一个变量的类型是 类类型,而非基本类型,那么该变量又叫做引用。 步骤1:引用和指向步骤2:多个引用,一个对象步骤3:一个引用,多个对象步骤4:练习-引用步骤5:答案-引用 步骤 1 : 引用和指向new Hero();代表创建了一个Hero对象 但是也仅仅是创建了一个对象,没有办法访问它 为了访问这个对象,会使用引用来代表这个对象Hero h =?new Hero();h这个变量是Hero类型,又叫做引用 =的意思指的h这个引用代表右侧创建的对象...

Flink系列文章 java实现增量文件WordCount,任务部署到yarn【代码】【图】

Flink系列文章 java实现增量文件WordCount,任务部署到yarn我们的目标FileWindowWordCount引入依赖码代码在IDE里运行看下效果Apache Flink - 数据流上的有状态计算Apache Flink 是一个框架和分布式处理引擎,用于在无边界和有边界数据流上进行有状态的计算。Flink 能在所有常见集群环境中运行,并能以内存速度和任意规模进行计算。 接下来,我们来介绍一下 Flink 架构中的重要方面。 处理无界和有界数据 任何类型的数据都可以形成一...

HelloWorld系列(二)- 用命令行中编写第一个 java 程序

大家真正在工作中开发 java 应用都会使用eclipse,myeclipse, IntelliJ等等 不过依然值得花10分钟学习如何使用最原始的命令行格式编译和执行java 程序 使用最原始的命令行方式来执行Hello World 步骤1:先看运行效果步骤2:准备项目目录步骤3:创建第一个java 源文件步骤4:显示扩展名步骤5:编译步骤6:运行步骤7:关于类步骤8:主方法步骤9:控制台输出步骤10:练习-Hello Java步骤11:答案-Hello Java步骤?1?:?先看运行效果在控制台下运行第...