![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
智渔课堂官方_Java基础教程
文章平均质量分 74
智渔课堂教育
拥有10年JavaEE开发经验,8年的Java教学经验。曾参与天宫一号相关软件的研发、以及无人机操控等航空航天项目的研发。
Java技术:精通JAVA语言,Java WEB技术,JAVAEE领域常用框架Struts2,Hibernate,MyBatis,Spring,SpringMVC等的应用
数据库技术:精通Oralce、DB2、MySql,以及MongoDB、Redis等NoSQL数据库应用
项目管理技术:精通maven,svn,github等
WEB前端技术:精通HTML5,JQuery,EasyUI,bootstrap等
展开
-
智渔课堂官方免费教程四:Java基础之数据类型 常量 变量 数据类型转换
一、数据类型计算机中存储和使用的任何数据,都是以二进制的形式存在的,那么计算机如何知道一串二进制数据是数字、字母还是其他类型的数据呢?在java中就是根据数据类型进行区分的。java中主要分为两大类,基本数据类型和引用数据类型(如图)基本数据类型:数值类型:整型:只能存储整数值;byte(1字节:取值范围 - (27) ~ 27-1)short(原创 2015-08-09 20:07:19 · 563 阅读 · 0 评论 -
智渔课堂官方免费教程十六:Java面向对象之抽象类
抽象类使用关键字abstract声明的类,就是抽象类。语法格式:[public] abstract class 类名{}抽象类不能被实例化(创建对象),但是可以声明引用;抽象类不能使用final修饰,一旦使用final修饰,表示这个抽象类将不能被继承,而抽象类又不能被实例化,这样创建出来的这个抽象类就没有任何意义了。所以,java规定抽象类不能使用关键字final修饰,否则会出原创 2015-08-10 18:54:33 · 516 阅读 · 0 评论 -
智渔课堂官方免费教程十四:Java面向对象三大特性之继承
继承在已有类的基础上建立出新的类,新的类拥有父类中访问修饰符允许访问的数据和功能,并且可以扩展新的数据和功能。语法格式:class 子类名 extends 父类名{}任何一个类的顶级父类都是Object类,即使创建一个类没有使用关键字extends继承任何类,那么此时默认是继承Object类的关键字super1、 在子类中访问父类的成员例如://调用父类中的属性su原创 2015-08-10 18:40:44 · 561 阅读 · 0 评论 -
智渔课堂官方免费教程十二:Java基础之内部类
内部类在一个类的内部或方法的内部声明的类,叫做内部类。语法格式:[访问修饰符] [static] class 类名{}可以简单的把内部类理解成一个变量,只不过这个变量的数据类型是class,使用时需要创建对象后再使用。分类: 成员内部类:直接声明在类中的内部类(同成员变量)局部内部类:生命在方法中的内部类(同局部变量)静态内部类:使用static修饰的原创 2015-08-10 18:11:08 · 406 阅读 · 0 评论 -
智渔课堂官方免费教程十一:Java基础之访问权限
访问权限包(package)是Java提供的一种区别类的名字空间的机制,是类的组织方式,它提供了访问权限和命名的管理机制;对应到硬盘上就是文件夹。Java中提供的包主要有以下3种用途:1) 方便类的管理;将功能相近的类放在同一个包中,可以方便查找与使用。2) 避免类的命名冲突;同一包下的类不可同名,不同包中的类可以同名。3) 控制类中成员的访问权限。声明包:pack原创 2015-08-10 18:00:28 · 371 阅读 · 0 评论 -
智渔课堂官方免费教程十:Java基础之关键字static和this
关键字staticstatic:静态的,用于修饰类的成员;被static修饰的成员,在字节码文件(.class文件)被类加载器(Classloader)从硬盘加载到内存中时,就被在内存中创建。没有被static修饰的成员在使用关键字new创建对象后才被创建被static修饰的成员,一个类只有一份,不属于某个对象,而且会常驻内存;例如:地球属于全人类,而不属于某一个人。静态属性的原创 2015-08-10 17:57:32 · 445 阅读 · 0 评论 -
智渔课堂官方免费教程九:Java基础之成员变量(全局变量)和局部变量
全局变量和局部变量全局变量(也叫属性)直接写在类中,使用范围是整个类;在创建对象时被创建,存储在堆内存中的对象里,有默认的初始值(整型:0 浮点型:0.0 布尔型:false 字符型:ASCII码为0的值 引用类型:null)局部变量写在方法中或者方法的参数,使用时才被创建,所以没有初始值;必须先初始化(第一次赋值),才能使用。基本数据类型的局部变量:直接将值存储在栈中原创 2015-08-10 17:53:38 · 390 阅读 · 0 评论 -
智渔课堂官方免费教程五:Java基础之运算符
一、运算符二、Java语句原创 2015-08-09 21:48:19 · 517 阅读 · 0 评论 -
智渔课堂官方免费教程八:Java基础之方法(函数)
方法(C语言中称为函数)方法:由多条语句组成,可以重复使用的,完成一个或多个功能的代码集合;方法只能声明在类中,不能声明在其他方法中语法格式:[访问修饰符] 返回值类型 方法名([参数列表]){ //代码块 } 注:这里的中括号[]代表括号里的内容可以写也可以不写,如果写,中括号不用写例如:/** * 演示方法的声明和调用 * @author 学霸联盟 - 赵灿原创 2015-08-10 17:51:57 · 651 阅读 · 0 评论 -
智渔课堂官方免费教程七:Java基础之类和对象
类和对象类和对象例如:人类指的是包含所有人的集合,而某个人就是人类的一个具体的对象在java中,类是用于描述对象的抽象,对象是使用类创建出来的具体实例。简单的说,类就是我们编写的代码,对象就是程序运行时,通过类在内存中创建的一个复制品。类相当于创建对象的模板,对象相当于通过模板创建出来的实物。声明类的语法格式:[访问修饰符] class 类名{ } 声明某个类型的引用(原创 2015-08-10 17:11:12 · 335 阅读 · 0 评论 -
智渔课堂官方免费教程六:Java基础之流程控制
Java基础之流程控制;选择结构:if,if-else,switch;循环结构:while,do-while,for,break,continue,死循环原创 2015-08-09 23:21:47 · 624 阅读 · 0 评论 -
智渔课堂官方免费教程十七:Java面向对象之接口
接口两个实体之间通信方式的规范,将内部操作和外部沟通分离,使其任意一方都能实现修改内部而不影响外界其他实体与其交互的方式。接口使用关键字interface声明,一般会在接口名前加上大写的I作为前缀语法格式:[public] interface I接口名{}接口中的属性:只能是常量,默认不写:public static final修饰的,写也只能写这些关键字中的一个或多个,不能写原创 2015-08-10 18:56:53 · 403 阅读 · 0 评论 -
智渔课堂官方免费教程十八:Java常用类之Object类
Object类所有引用类型的顶级父类,任何一个类都会直接或者间接的继承它。当使用class关键声明一个类,而未使用extends继承任何类时,默认继承Object类的。Object类中常用方法的源码/*作用:获得对象的hashCode值在现阶段可以简单理解该方法获得的就是对象在内存中的地址*/public native int hashCode();/*作用:比较两个原创 2015-08-11 17:37:16 · 486 阅读 · 0 评论 -
智渔课堂官方免费教程十三:Java面向对象三大特性之封装
面向对象的三大特性封装将数据(属性)和功能(方法)包装在一起,形成一个不可分割的整体。对使用者提供访问的接口(方法的调用)另一种简单的说法是,将属性私有化,对外提供公共的getter和setter方法使用封装的优势:安全(屏蔽非法操作,隐藏类的实现细节)实例:package characteristic.encapsulation;/** * 用于演示封装 * 类中封装原创 2015-08-10 18:17:41 · 458 阅读 · 0 评论 -
智渔课堂官方免费教程二十三:Java常用类之日期类 Date类 SimpleDateFormat类 Calendar类
Date 类创建对象时,默认获取系统当前时间SimpleDateFormat类用来格式化日期的;创建对象是可以传入格式:new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");主要方法format(Date)Calendar类可以使用SimpleDateFormat类中的getCalendar()方法获取对象。常用方法:get(int);原创 2015-08-11 18:48:19 · 354 阅读 · 0 评论 -
智渔课堂官方免费教程二十六:Java基础教程之数组
数组举例:假如现在有十个人排成一队【张三,李四,王五……】,这个队的队名叫A,然后要求第一个人从0开始报数【张三报0,李四报1,王五报2……】。现在要求第一个人出列,但现在还不知道张三的名字,怎么办?那么只能要求A队0号出列。请问此时谁会出列?很明显是张三出列。这对人就形成了类似数组的结构;其中队名A就对应数组名,各个人报的号就对应数组的下标,而每个人就对应数组中的元素,人的个数就对应数组原创 2015-08-11 19:14:26 · 581 阅读 · 0 评论 -
智渔课堂官方免费教程二十五:Java基础教程之枚举 enum
枚举枚举简单的说就是将需要的常量值一个一个的列举出来,并封装成一个整体。语法格式:[public] enum 枚举名{ //值列表 }声明格式:枚举名 变量名;赋值格式:变量名 = 枚举名.值其中的列举的每个值要符合标识符命名规则,不可随意编写实例:package enumdemo.simple;/** * 创建枚举类型的Week 注意:这里创建的是枚举,即数据类原创 2015-08-11 19:01:39 · 582 阅读 · 0 评论 -
智渔课堂官方免费教程二十四:Java常用类之随机数 Math类和Random类
咱先了解即可Math类:数学类,包括abs()求绝对值,sin()正弦函数,cos()余弦函数等等Random类:获取各种数据类型的随机数实例:import java.util.Random;/** * 演示获取随机数 * @author 学霸联盟 - 赵灿 */public class MathDemo { public static void main(Str原创 2015-08-11 18:55:50 · 296 阅读 · 0 评论 -
智渔课堂官方免费教程二十二:Java常用类之接收控制台输入 Scanner类
Scanner类(了解即可)使用Scanner类接收键盘的输入1、创建Scanner对象的语法:Scanner scan = new Scanner(System.in);2、使用Scanner对象接收键盘输入:scan.next();//等待并接收键盘输入实例:package common_class;import java.util.Scanner;/** * 演示Sc原创 2015-08-11 18:45:12 · 347 阅读 · 0 评论 -
智渔课堂官方免费教程十五:Java面向对象三大特性之多态
多态多态是指某一引用可以指向多种形态的对象,调用同一个方法可以执行多种形态的结果;代码层面就是父类的引用可以指向不同子类的对象实例:package characteristic.polymorphism;/** * 声明Person类 * * @author 学霸联盟 - 赵灿 */public class Person { private String name =原创 2015-08-10 18:48:22 · 528 阅读 · 0 评论 -
智渔课堂官方免费教程二十一:Java常用类之包装类 自动装箱 自动拆箱
包装类每种基本数据类型都有对应的包装类byte – Byteshor – Shortint – Integerlong – Longfloat – Floatdouble – Doublechar – Characterboolean – Boolean前面是基本数据类型(值类型),后面是其对应的包装类型(引用类型)从包装类自动转换为对应的基本数据类型的原创 2015-08-11 18:36:38 · 585 阅读 · 0 评论 -
智渔课堂官方免费教程二十:Java常用类之StringBuffer类和StringBuilder类
这里只简单介绍这两个类常用的几个方法,至于同步和异步对于初学者可以暂时忽略,以后讲到线程的时候在详细讲解StringBuffer类:线程不安全的(异步)StringBuilder类:线程安全的(同步)常用方法: append() 追加字符串 delete() 删除字符串 insert() 插入字符串实例: package comm原创 2015-08-11 18:30:29 · 491 阅读 · 0 评论 -
智渔课堂官方免费教程十九:Java常用类之String类
String类首先,String是引用类型,也是唯一一个可以不使用关键字new创建对象的引用类型,因为有字符串常量值,使用英文格式的双引号""括起来就是字符串常量值。创建对象的两种方式 方式一、String s1 = “abc”; 方式二、String s2 = new String(“abc”); 这两种方式都是创建了一个字符串对象,值都是原创 2015-08-11 17:44:35 · 507 阅读 · 0 评论 -
智渔课堂官方免费教程三:Java基础之注释 关键字 标识符
一、Java源文件的构成二、注释三、关键字四、标识符原创 2015-08-09 19:25:10 · 447 阅读 · 0 评论 -
智渔课堂官方免费教程二:Java简介和开发环境配置
一、 Java简介至于Java的历史,网上很多,有兴趣的同学自行了解即可,这里起步阶段只做简单介绍,后面有用到的地方在详细讲解,如有疑问,可以联系我们,个人资料中有联系方式。编译方面Java语言既使用了编译,也使用解释源文件:源代码(开发人员编写产生);存储在源文件(xxx.java文件)中编译器:字节码文件(编译产生);存储在字节码文件(xxx.class文件)中原创 2015-08-09 17:35:37 · 676 阅读 · 0 评论 -
智渔课堂官方免费教程三十五:Java集合框架之Collection接口和Collections类
Collection接口Collection接口是List和Set接口的父接口,其中主要定义了一些集合基本操作的方法,包括与Iterator之间的关系List extends CollectionArrayList implements ListLinkedList implements ListVector implements ListSet exte原创 2015-08-12 16:50:19 · 471 阅读 · 0 评论 -
智渔课堂官方免费教程三十六:Java数据结构之双向链表结构
数据结构之双向链表例如:现有双向链表TwoWayLinked中存储着1,2,3,4四个元素,那么集合对象中会有4个节点A、B、C、D,由上述结构可以知道,节点A中存储着元素1和节点B;节点B中存储着元素2和节点A和节点C,节点C中存储着元素3和节点B和节点D,节点D中存储着元素4和节点C。如果现在要在元素2和3中间插入一个元素5;过程如下:1、创建节点E,E中存储元素52、将E中的原创 2015-08-12 16:54:47 · 595 阅读 · 0 评论 -
智渔课堂官方免费教程三十七:Java数据结构之单向链表结构
数据结构之单向链表例如:现有双向链表OneWayLinked中存储着1,2,3,4四个元素,那么集合对象中会有4个节点A、B、C、D,由上述结构可以知道,节点A中存储着元素1和节点B;节点B中存储着元素2和节点C,节点C中存储着元素3和节点D,节点D中存储着元素4和null。如果现在要在元素2和3中间插入一个元素5;过程如下:1、创建节点E,E中存储元素52、将B中的下一个节点修改原创 2015-08-12 17:03:05 · 645 阅读 · 0 评论 -
智渔课堂官方免费教程三十八 :Java基础教程之异常
异常程序中不正常的情况分为两大类:错误(Error)和异常(Exception)错误(Error):程序本身无法对这种不正常的情况进行处理,将会导致程序崩溃;例如:内存耗尽错误,JVM崩溃错误等异常(Exception):程序可以特殊的代码,对不正常的情况进行捕获和处理,程序可以继续运行;例如:除零异常,空指针异常,数组下标越界异常捕获异常语法格式1: t原创 2015-08-12 17:17:00 · 391 阅读 · 0 评论 -
智渔课堂官方免费教程四十四 :Java流之字文件File类
文件类常用方法方法名称说 明File (String pathname)创建文件对象boolean exists( )判断文件或目录是否存在boolean isFile( ) 判断是文件还是目录boolean isDirectory原创 2015-08-14 17:21:00 · 342 阅读 · 0 评论 -
智渔课堂官方免费教程三十九 :Java基础教程之线程
线程线程和进程进程:系统运行程序的最小单位;一个进程最少有一个线程线程:程序执行任务的最小单位;线程与线程之间并行一个进程至少有一个线程,在java中这个线程称为主线程,由系统创建,运行main方法。这样只有一个线程的程序也被称为单线程程序。主线程从程序入口main方法开始执行代码,执行任意方法中的代码都是按照自上而下的顺序执行的,如果只有一个主线程,又想实现在线听音乐这个功能原创 2015-08-13 13:28:13 · 775 阅读 · 0 评论 -
智渔课堂官方免费教程四十二 :Java流之字节流 输入流和输出流 InputStream和OutputStream
流流:从输入/输出源到目标之间的有序数据 a)比如水流、电流、气流;计算机中流的本质是脉冲电流。 b)为进行数据的输入/输出操作,Java中把不同的输入/输出源(键盘、文件、网络连接等)抽象表述为“流”(stream) c)Stream是从起源(source)到接收(sink)的有序数据 d)java.io包中定义了多个流类型(类或抽象类)来实现输入/输原创 2015-08-14 16:43:14 · 475 阅读 · 0 评论 -
智渔课堂官方免费教程四十三 :Java流之字符流 Reader和Writer
字符输入流Reader常用方法方法名称说 明int read( )读取一个字符并返回,返回值=-1表示没有读取到任何字符,读取结束int read(char c[ ])从流中读取数据,直至流读完或存满数组c,返回值是读取的字符数abstract int read(ch原创 2015-08-14 17:20:38 · 465 阅读 · 0 评论 -
智渔课堂官方免费教程四十一 :Java基础教程之线程死锁
线程死锁是指两个或两个以上的线程在执行过程中,由于竞争资源或者由于彼此通信而造成的一种阻塞的现象,若无外力作用,它们都将无法推进下去。此时称系统处于死锁状态或系统产生了死锁,这些永远在互相等待的线程称为死锁线程。例如:某一商店有两个人PS和PB在做交易,PS手里拿着货物对PB说,你先给我钱我在给你货,而PB拿着钱对PS说你先给我货我在给你钱。两个人就此僵持下去,永远也无法做成交易,这就构成原创 2015-08-13 13:58:15 · 802 阅读 · 0 评论 -
智渔课堂官方免费教程四十五 :Java算法之递归算法
递归是指某个方法在自己的方法体内直接或间接的调用自己。作用和嵌套循环有些类似,很多地方可以互换使用;但在有些问题上只能使用递归实现;例如:扫描某个文件夹下的所有Java文件,包括子文件夹下的Java文件。此时并不知道这个文件夹下最多有多少层子文件,所有无法使用嵌套循环来实现这样的扫描实例:package recursion;import java.io.File;impor原创 2015-08-14 20:09:21 · 562 阅读 · 0 评论 -
智渔课堂官方免费教程三十四:Java集合框架之泛型集合
泛型集合泛型集合不是指某种集合,而是指在集合的基础上增加了泛型。泛型集合中,一旦传入了泛型参数“类A”;则只能向这个集合中添加类A或类A子类的对象,不能添加其他对象了。从泛型集合中获取对象时,对象的类型是类A,而不是Object类型的对象了。泛型List例如:上面说到的两种List集合,都可以加入泛型package collection.list.arrayList;原创 2015-08-12 16:40:54 · 490 阅读 · 0 评论 -
智渔课堂官方免费教程四十 :Java基础教程之线程同步
线程的同步指当多个线程使用同一对象中被同步的资源时,要根据“先来后到”的顺序使用。举个例子:现在只有一台电脑,现在有两个人A和B想玩游戏,一个人C想写代码,一个人D想听音乐。此时A、B、C三个人要抢这台电脑,谁先抢到谁用,用完了后面两个人在接着抢,谁抢到谁用。而D则不用,在另外三个人中任意一个人正在使用的时候,都可以播放音乐给他听;由此可以看出玩游戏和写代码的功能(方法)是要有“先来后到”原创 2015-08-13 13:43:15 · 679 阅读 · 0 评论 -
智渔课堂官方免费教程二(拓展):关于解决新建文件没有扩展名的问题
部分win8系统或Win10 系统 Win7系统和部分win8系统WinXP可以省略步骤一步骤一、在这个文件夹下面,按一下键盘上面的“ALT”按键,会显示菜单栏,如图。 步骤二、点击新出现的工具栏中的“工具”选项,然后选择“文件夹选项”。步骤三、在打开文件夹选项中,点击“查看”,然后下拉滚动条,找到“隐藏已经文件类型的扩展名”这一项,把前面的原创 2015-08-09 17:08:46 · 584 阅读 · 0 评论 -
智渔课堂官方免费教程二(拓展):Java软件开发环境的安装与配置
java软件开发所需软件环境的下载、安装和配置原创 2015-08-09 16:56:13 · 671 阅读 · 0 评论 -
智渔课堂官方免费教程一:Java软件开发预备知识
一、计算机系统简介:硬件系统简介、软件系统简介二、软件简介:应用软件模式三、编程语言简介:二进制语言、低级语言、高级语言原创 2015-08-09 01:33:32 · 808 阅读 · 0 评论