Java使用点滴】的更多相关文章

1. 关于interface的定义 [修饰符] interface 接口名 [extends 父接口名列表]{ [public] [static] [final] 常量;[public] [abstract] 方法;} 注意,斜体的部分代表是缺省的,默认的,即便声明的时候不写,也会在编译时默认加上.尤其是常量需要注意,继承的子类不能修改接口中声明的常量.另外,修饰符写与不写都是public访问权限,因为接口中的方法永远是public权限的. 2 this与super 序号 区别点 this su…
前言 一切从下面这段代码开始 public static void test(String[] agrs){ Integer a = 1; Integer b = 2; System.out.println("a=" + a + ", b=" + b); swap( a, b ); System.out.println("a=" + a + ", b=" + b); } public static void swap( Int…
基于<Java编程思想>第四版 前言 虽然Java的泛型在语法上和C++相比是类似的,但在实现上两者是全然不同的. 语法 Java只需要一个<>就可定义泛型.在<>中可以使用任意符合Java语法要求的字符作为类型的标识,可以定义泛型类.泛型接口.泛型方法等. class A<T>{ T a; public <Q> void foo(Q a){ } } interface B<T>{ void foo(T a); } 实现 Java的泛…
基于<Java编程思想>第四版 前言 我们要操作一个类实例对象时,一般都要先知道这个类有哪些方法或者成员变量.反射就是在我们不知道这个类有哪些方法或成员变量时,使用特定方式得到类的这些信息,再根据特定规则去调用对应的方法操作类实例对象. 这中间有两个未知条件 如何记录类信息 如何确定规则 类信息是通过Class记录的,规则是由程序员定的. Class Class是一个记录类信息的类,每个类(包括Class)都会有一个Class对象.其实现也很好猜测和理解:编译器扫描完代码,就能知道类的具体信息…
基于<Java编程思想>第四版 构造与析构 在C++中通过构造函数和析构函数来保证:对象在使用前被正确初始化,在使用后被正确回收.Java中同样存在构造函数,但是没有析构函数.之所以没有析构函数是因为对象实际的存储期由GC决定,程序员无法明确析构函数何时会被执行. GC会在回收对象前执行Object的protected void finalize()方法,子类可以通过重写finalize()方法来清理资源.但是因为GC回收对象时间的不确定性,加上finalize()本身可能引入的问题,所以并不…
基于<Java编程思想>第四版 前言 "程序就是算法加数据结构",而算法就是控制语句加操作符,编写一个程序就是使用控制语句加操作符去操作数据结构,因此我从Java的控制语句.操作符以及如何组织数据结构开始入手.因为有C/C++的基础,所以不免会以对比的方式去理解Java. 控制语句 除了没有goto,Java的控制流程的关键字和C++是一样的,很好理解.不过Java中的break和continue除了C++的正常作用外(跳出或继续当前循环),还有类似C++中goto的功能,…
1.查找某个字符在字符串中第几次出现的位置 /** * 查找某个字符在字符串中第几次出现的位置 * @param string 要匹配的字符串 * @param i 第几次出现 * @param character 要匹配的字符 * @return 出现的位置 */ public static int getCharacterPosition(String string ,int i,String character){ // Matcher slashMatcher = Pattern.com…
背景 项目中我们会遇到这种情况:在几个方法中增加同样的代码,这些代码是与业务无关的,而且以后有可能因为考虑不周或需求变动再或者是其它原因,我们须要对他们进行逐一进行修改.举个详细的样例,比方程序中的日志控制.事务控制等,这些功能是与业务无关的,但却须要将它们与我们的逻辑混在一起.达到一些特殊的需求. 这种情况往往代码都是同样的,能够抽离出来,为了复用,我们能够将这些同样的代码单独封装成的方法,以供其它须要的地方调用,这样对于以后的改动就做到了仅仅改动一处的效果,达到了程序的复用.但另外一个问题便…
写在前面:从本片文章开始,将记录自己学习 Java 的点滴路程,目标定的并不是让自己成为一个 Java 高手,而是让自己多掌握一门语言,使自己的知识面更广一些,在学习 Java 的过程中如有不对的地方还请各位大佬批评指教. 在之前看过一些文章,说互联网知识到底要学到什么程度,有人认为不在多而在精,有人认为要广而猎之,我认为在自己可承受范围内其实应该更多的取接触新的事物,也许这辈子你可能都用不到,但你学习的过程也是个人成长的路程,其余就不多说了,免得招来口诛笔伐. 在开始编写我们第一个程序之前我们…
一.需求:计算网页访问量前三名 import org.apache.spark.rdd.RDD import org.apache.spark.{SparkConf, SparkContext} /** * 需求:计算网页访问量前三名 * 用户:喜欢视频 直播 * 帮助企业做经营和决策 * * 看数据 */ object UrlCount { def main(args: Array[String]): Unit = { //1.加载数据 val conf:SparkConf = new Spa…