死磕Java高级内容系列
Anthony_tester
这个作者很懒,什么都没留下…
展开
-
Java高级篇-0-为什么要掌握Java高级篇知识
过了好长一段时间,就想要花时间系统去学习下Java的高级篇知识,这部分是我个人目前比较欠缺的,而且是急缺的知识。我认为的Java高级篇内容是这样划分的:对Java这个编程语言有基本了解,基本掌握了基础语法,能够利用基础部分知识去写一些小项目,例如,我们的webUI自动化测试包括简单的框架设计。而Java的高级部分,主要从基础语法到Java web编程中间的这个断层,例如,Java的几个核心常用的类的使用,原创 2017-10-27 14:53:09 · 2179 阅读 · 4 评论 -
Java高级篇-13-增强型For循环
本篇来学习Java的增强型For循环,也叫for-each循环。一般,我们遍历元素的时候,喜欢采用for循环。那么到底采用哪种for循环呢?主要是取决你的需求,如果你要对元素下标,也就是索引进行操作,那么选择传统的for循环,如果你实现操作和索引没有关系,建议采用for-each循环。下面通过例子,来介绍下这样的情况。1. 分别用for-each 和传统for循环实现数组遍历packa原创 2017-11-05 21:46:35 · 1156 阅读 · 0 评论 -
Java高级篇-12-静态导入
前面文章,我们知道了Java中的静态方法和静态代码块。这篇来说说静态方法的使用相关的知识,静态导入。什么是静态导入呢,就是在导入包语句中直接写导入该类的静态方法。这么说还不理解没关系,我们下面通过代码举例就很简单了。1. 打印int的最大和最小整数是多少,我们先来看看没有使用静态导入的效果。package demo3;/** * create by Anthony on 2017/1原创 2017-11-04 21:43:49 · 815 阅读 · 2 评论 -
Java高级篇-11-可变长参数的使用
本篇学习java中的可变长参数(varargs),使用varargs的时候,说明这个方法中,你暂时不确定有多少个参数传入。但是在调用该方法的时候,你就需要具体写出多少个参数。在同一个方法中,使用varargs必须要求参数都是同一个数据类型。一般格式是这样的public void fun(int ...x),小括号的三个点表示省略,直接来看下面的例子。package javademo;pub原创 2017-11-03 15:31:39 · 936 阅读 · 0 评论 -
Java高级篇-10-静态代码块和静态方法
这篇来讨论下静态代码块和静态方法,静态方法我们已经知道了,就是这个方法的名称前有一个static修饰符。先来看看什么是静态代码块。一般情况下,如果有些代码必须在项目启动的时候就执行的时候,需要使用静态代码块,这种代码是主动执行的,例如Java中程序执行入口的main()函数。在不创建对象的情况下,其他程序来调用的时候,需要使用静态方法。静态方法是直接通过类名.静态方法名来调用的。静态代码块和静态方原创 2017-11-01 14:07:37 · 1194 阅读 · 1 评论 -
Java高级篇-9-继承
本篇来学习下Java中的继承知识,说到继承,应该能想起Java面向对象的三大特性,继承,多态,封装。我们本篇来了解继承,其实多态和封装和继承是有关系的,理解了继承,剩下两个概念就很好理解。要了解继承,我们先要了解父类的概念。Java中任何类都有一个父类,即使你没有声明父类,也有一个隐含的父类,叫Object。Object没有定义,但是定义了一些方法,例如我们常用的equals和toString方法原创 2017-10-31 15:29:54 · 1008 阅读 · 0 评论 -
Java高级篇-8-构造方法和初始化
这篇来学习下构造方法的话题,首先什么是构造方法。所谓构造方法,就是这个类在被实例化时(创建对象时)就要执行的方法,方法名和类名相同。下面,主要从三个方面来学习构造方法:构造方法的定义,构造方法重载,构造方法内参数的初始化。1. 构造方法定义 我们已经知道了构造方法是和类同名,其实还有其他的条件。构造方法是一定没有返回值的,所以不能有类型返回,连void都不可以有。构造方法前面可原创 2017-10-31 14:24:41 · 4285 阅读 · 0 评论 -
Java高级篇-7-Java中方法的参数是如何传递的
本篇来学习下Java中的方法的参数是如何传递的。应该都听说过值传递和引用传递,值传递很好理解,就是把这个实际的值给传进去,引用传递就有点费脑子。在Java的方法中,引用传递传递的不是引用本身,而是之前应用的一个副本。这样说,不能理解没关系,我们分别通过代码来理解值传递和引用传递。1.值传递Java中按值传递(call by value),先记住这个结论:值传递,方法得到的是所有参数值的一个原创 2017-10-30 22:41:21 · 1021 阅读 · 1 评论 -
Java高级篇-6-数组拷贝方法
前面我们介绍了Array和Arrays类几个常用的方法,没有提到对象clone()方法和Arrays.copyOf(),关于拷贝,放到这篇来讨论。拷贝或者复制,一般是对象的引用的操作,有三种方式来实现:直接赋值,浅拷贝,深拷贝。下面我们用代码来理解这三种情况。面试中经常拿数组的几种拷贝方法,来考察你对浅拷贝和深拷贝的理解。特别是直接赋值和对象clone这两个方法。1.直接赋值原创 2017-10-29 21:17:27 · 1016 阅读 · 0 评论 -
Java高级篇-5-Arrays类
前面介绍了字符串的操作的String类,这篇,我们学习数组类,Java中提供了一个数组常见操作方法的类Arrays.java。其实前面也说过,String其实源码中就是用一个char[]数组来存储的,也是属于数组的范围。来看看数组类常见操作方法举例。1.数组的创建和元素遍历package demo3;import java.util.Arrays;/** * create by原创 2017-10-29 12:55:59 · 1031 阅读 · 0 评论 -
Java高级篇-4-StringBuffer和StringBuilder
前面一篇,我们介绍了String这个类,其中String类提供的一些方法中有些方法是基于StringBuffer实现的。在Java中如果涉及到频繁的字符串修改操作,建议采用StringBuilder和StringBuffer,肯定不用String类。肯定有人会问,StringBuilder和StringBuffer有什么区别呢?这个在面试中也经常被问道。就一句话,StringBuffer和Stri原创 2017-10-29 12:25:23 · 1055 阅读 · 0 评论 -
Java高级篇-2-装箱和拆箱的基本概念
前面一篇的结尾,我们画了一张图,对Java的数据类型进行了分类。其中,有8种基本数据类型,还有引用类型。我们先来看看下面这段程序。package demo3;/** * create by Anthony on 2017/10/28 */public class ForTest { public static void main(String args[]){原创 2017-10-28 19:57:04 · 3858 阅读 · 6 评论 -
Java高级篇-3-String类
这篇来学习Java中的String类。这个类比较基础,也很重要,工作中经常要使用。例如自动化测试中,前后两个字符串变量的比较,有时候我们需要比较是否包含关系,比较是否相等关系。有时候我们需要判断是否以什么开头,以什么结尾等。这些比较都可以在String这个类找到相应方法。实际上,字符串对象在Java中是用有一个char数组实现的。字符串是常量,一旦创建好了就不能修改,但是可以拷贝字符串对应的cha原创 2017-10-28 21:24:14 · 1042 阅读 · 1 评论 -
Java高级篇-1-Java基础知识快速过一遍
在学习Java高级部分知识之前,我们来简单梳理一下Java基础语法部分的知识,不会太全,但是基本的,常用到的一一复习一下。1.Java编码规范 在这里,还是要强调Java编码标准或者规范。以前,我写代码或者脚本不多,也不知道这个重要性。突然,一天,看别人写的代码。火大了。写了什么鬼东西。很多没有写注释,搞得就是看得懂代码,结果不知道这段代码实现什么业务功能。很多公司原创 2017-10-28 15:47:29 · 5650 阅读 · 1 评论 -
Java高级篇-14-如何把项目导出jar包
很多时候,我们需要把项目导出成jar包,通过运行jar来运行程序,不希望别人直接看到我们写的代码。例如,在java开发的很多开源插件中,都是通过导出项目成...jar包,别人通过引用这个jar文件,就可以使用里面的API。这篇,我们在IDEA上看看如何把项目导出成可执行的jar包。1. 前提条件新建一个java项目,包下有一个main方法。2. 点击项目名称,右键,选择Op原创 2017-11-06 13:07:05 · 4751 阅读 · 1 评论