javaSE
守护砂之国泰裤辣
既然已经走这么远了,那么不妨再走远一点...
展开
-
用Java开发一个简单的文本文件字符串替换程序
之前有写过几篇Spring的入门笔记,不过都是手动导jar包,这种方式比较原始。现在主流是Maven,以后可能会是Gradle! IOC的原理基本是反射。项目中原来需要手动new的对象交由IOC容器来创建,容器还管理项目中各种bean的依赖关系。 首先是创建一个maven项目,...原创 2020-03-27 11:37:44 · 833 阅读 · 0 评论 -
重载与重写
Java中的重载(overload)与重写(override)是Java面向对象编程特别是多态中比较重要的概念,两者的比较也是笔试中经常遇到的问题,现在举几个例子,对这两者稍加探索。 重载不多说,要求重载的方法有相同的方法名,但是参数不一样(数量,类型,顺序),注意返回值类型不算,因为返回值类型是函数执行完之后才能确定的,如果有两个方法除返回值类型不同其它全相同,Java虚拟机会认为这是同...原创 2018-06-15 23:30:47 · 262 阅读 · 0 评论 -
Java 子类能否重写(覆盖)父类的静态方法?
答案是不能重写,也就是不能被覆盖!但是,与实例方法一样,子类能把父类的静态方法继承过来。父类代码:public class StaticParent { public static int a = 0; public static void printA() { System.out.println("In Parent, a = " + a); }} ①子类不重写:public ...原创 2018-06-15 21:50:07 · 21879 阅读 · 6 评论 -
Java输入输出重定向
我们先来看一个程序,它的作用是累加输入的整数直到输入0。 import java.util.Scanner;public class SentinelValue { /** Main method */ public static void main(String[] args) { // Create a Scanner Scanner in...原创 2018-03-12 10:10:38 · 1523 阅读 · 2 评论 -
两个浮点数值相等比较
因为浮点数的存储和计算都是近似的(详见IEEE754标准),所以我们不能简单地用"=="运算符来比较两个浮点数是否相等。 我做了几组测试,发现有时能精确计算,有时不能。 以Java环境为例:(1会被隐式转为1.0)public class Test { public static void main(String[] args) { System....原创 2018-03-12 09:39:10 · 2221 阅读 · 0 评论 -
一个分数类的实现——Rational类
分数是我们从小学就开始接触的一类有理数,但是在计算机中只有浮点型数据。我们今天(除夕)就来实现一个分数类,以见证这历史性的时刻。从最基础的分数结构来思考,我们需要一个分子分母,比如这样:public class Rational { private int num; /* The numerator of this Rational */ private int den; /*...原创 2018-02-15 22:42:57 · 6717 阅读 · 0 评论 -
Java可变长参数列表
在Java中我们不知道自己有多少个参数要传递怎么办?可以试试可变长参数列表。语法格式为:type... args例如求n个数中的最大值,n事先不知道,那么可以这样写:private int max(int n1, int... args) { int result = n1; for (int n : args) { if (result < n) res...原创 2018-02-08 10:10:27 · 1913 阅读 · 0 评论 -
Java文本文件读写 两个例题(2)
1.计算《李尔王》一个段落Lear.txt里包含多少行、单词和字符Poor naked wretches, wheresoe'er you are,That bide the pelting of this pitiless storm,How shall your houseless heads and unfed sides,Your loop'd and window'd ragged...原创 2018-02-08 10:03:02 · 532 阅读 · 0 评论 -
Java读写文本文件(1)
在Java(以及大部分其它类似的语言)中读/写文件会遵循三个步骤:1)打开文件。将创建名为读取/写入器的对象,该对象使程序具有访问数据的能力。对于读取文本文件,首先要调用FileReader类的构造器,传文件名字。2)读取/写入文件。打开文件后,就可以用FileReader对象上适当的方法来读取数据。文件既可以逐个字符读取,也可以逐行读取,当然需要更复杂的读取器类来操作。3)关闭文件。完成数据操作...原创 2018-02-08 09:30:39 · 1855 阅读 · 0 评论 -
java拷贝数组(深拷贝)
假设数组a,b。要把数组a中的元素拷贝到b中,如果直接b = a的话。就会使b指向a的储存区域,对b的修改也会引发a中元素的修改(浅拷贝)。//导入Arrays类import java.util.Arrays;public class ArrayTest{ public static void main(String[] args) {原创 2016-12-08 16:26:13 · 16190 阅读 · 4 评论