
疯狂Java讲义
该专栏为我自学李刚"疯狂Java讲义"所做笔记与心得,与大家分享
含低调
一个梦想是成为教师的程序员
展开
-
第18章:类加载机制与反射
18.1 类的加载、连接和初始化 使用类时,都会经历加载、连接、初始化三个步骤 18.1.1 jvm和类 java命令运行某java程序,操作系统中会启动一个java虚拟机进程,无论该java程序多么复杂,该程序包含了多少线程,它们都处于java虚拟机进程里。同一个jvm的所有线程、所有变量都处于同一个进程中,它们都使用该jvm进程的内存区。 jvm终止的情况 程序运行到最后正常结束 Syst...原创 2019-10-18 09:49:38 · 149 阅读 · 0 评论 -
第17章:网络编程
注: 网络编程(TCP/IP编程)!=网站编程 里面内容不做网络编程很难用到,如果需要时再看也可以,类似java的AWT和SWING编程 本文前半部分为马士兵课程中讲解内容,后半部分为疯狂java讲义中部分内容 一:网络基础 分层:应用–传输(udp/tcp)–网络(ip)–物理+数据链路 网络:tcp/ip详解 ip协议:提供独一无二的ip地址 udp/tcp协议:传输的方式 tcp:可...原创 2019-10-17 14:52:11 · 126 阅读 · 0 评论 -
第16章:多线程
16.1线程概述 graph LR A[操作系统]-->|1:n并发|B[任务] B-->|1:1|C[程序] C-->|1:1|D[进程,即运行中程序] D-->|1:n并发|E[线程] 16.1.1线程与进程 进程特点: 独立性:每个进程拥有自己私有地址,没有进程本身允许,其他进程无法访问该进程地址空间 动态性:程序为静态指令集合,程序运行起来变成进程 并发性:同...原创 2019-10-15 13:31:41 · 259 阅读 · 0 评论 -
第14章:Annotation
14.1 基本Annotation Annotation与Class、Interface、Enum同级 Annotation为代码中特殊标记,类编译、加载时读取,并执行相应处理 Annotation不影响程序代码执行,如果希望Annotation起一定作用,需要使用APT(Annotation Procession Tool)对Annotation中信息进行访问与处理 使用Annotation ...原创 2019-10-14 22:20:43 · 159 阅读 · 0 评论 -
第13章:JDBC编程
13.1 JDBC基础 JDBC定义了一套标准接口,即访问数据库的通用API,不同的数据库厂商根据各自数据库的特点去实现这些接口 13.2 第一个JDBC程序 引入ojdbc6.jar import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQ...原创 2019-10-14 19:15:58 · 152 阅读 · 0 评论 -
第15章:输入输出
15.1 File类:表示文件或目录 File可以新建,删除,重命名文件和目录,不能访问文件内容本身 目录/文件:File对象 目录名/文件名/路径名:String对象 路径与目录、文件区别:路径是用来表示唯一的目录、文件的东西 例:路径名:C:\\wusihan/liuxueting 目录名:liuxueting 15.1.1 访问文件和目录 创建File实例:new File(Stri...原创 2019-10-12 14:34:09 · 169 阅读 · 0 评论 -
第10章:异常处理
10.1 异常概述 将业务功能实现代码与错误处理的代码相分离 10.2 异常处理机制 10.2.1使用try…catch捕获异常 //没有异常处理之前对异常的处理方式 if(一切正常){ //业务实现代码 }else{ alert 输入不合法; goto retry; } //利用try...catch处理异常 try{ //业务实现代码 throw ne...原创 2019-10-12 11:56:46 · 172 阅读 · 0 评论 -
第9章:泛型
9.1 泛型入门 9.1.1 编译时不检查类型所导致异常 将Integer装入集合,集合会丢失对象状态信息,集合只知道自己装的是Object,读取集合元素时,如果将Integer强转成String引发ClassCastException,所以引入泛型机制,保证编译只要不报错,运行就不应报错 9.1.2 使用泛型 java5以后允许创建集合时指定集合元素的类型,即参数化类型,也被称作泛型 //类型参...原创 2019-10-10 21:44:18 · 267 阅读 · 0 评论 -
第8章:集合
8.1 集合概述 为保存数量不确定的数据,以及保存具有映射关系的数据,java提供了集合类 继承关系 graph TD A[Collection接口]-->B[Set接口] A-->C[Queue接口] A-->D[List接口] B-->E[EnumSet] B-->F[SortedSet接口] B-->G[HashSet] F-->H[TreeSe...原创 2019-10-10 19:03:58 · 226 阅读 · 0 评论 -
第7章:Java基础类库
7.1 与用户互动 7.1.1 运行Java程序的参数 7.1.2 使用Scanner获取键盘输入 import java.util.Scanner; public class ScannerKeyBoardTest { public static void main(String[] args) { //System.in代表标准输入,就是键盘输入 Scanner sc = new ...原创 2019-10-09 21:57:09 · 132 阅读 · 0 评论 -
第6章:面向对象(下)
6.1 包装类 java为8种基本数据类型分别定义了相应的引用类型,并称之为基本数据类型的包装类 jdk1.5之后提供了自动装箱与自动拆箱功能,即基本类型数据和对应的包装类可以自动转换 //自动装箱:相当于Integer a = Integer.valueOf(5); Integer a = 5; //5是int型,所以无法自动装箱成Double //Double a = 5; //Boole...原创 2019-10-09 21:45:27 · 213 阅读 · 0 评论 -
第5章:面向对象(上)
String a = new String() ; 类 引用类型变量 对象(实例),new表示调用构造器 5.1 类和对象 5.1.1 类中各个内容的定义 //1.定义类:没有protected/private和static public/default final/abstract class 类名{ 初始化块; 0到多个构造器; 0到多个成员变量;...原创 2019-10-08 22:21:37 · 195 阅读 · 0 评论 -
第4章:流程控制与数组
4.1 循环 break:结束整个循环 continue:结束本次循环 return:结束整个方法 4.2 栈内存与堆内存 当方法执行时,每个方法都会建立自己的栈内存 4.2.1 储存原理 一个方法中定义的引用会存放到该方法独自的栈内存中,随着方法的结束,该方法的栈内存也将自动销毁。引用的为基本类型时,栈内保存该引用与该引用对应的值,引用的为引用类型时,栈内保存地址用于指向其引用的对象 pac...原创 2019-10-08 21:09:57 · 107 阅读 · 0 评论 -
第3章:数据类型和运算符
3.1 数据类型分类 3.1.1 基本数据类型 3.1.2 引用类型 类,接口,数组,null,引用类型无法转为基本类型 3.2 基本数据类型 3.2.1 整型 byte正好对应1个字节,1个字节包含8位(bit),即可以用8位的2进制数表示 字节流正好对应一个个字节,一般用byte[]存放 各整型字节数 byte:1 short:2 int:4 long:8 如果定义一个long型,且该...原创 2019-10-08 20:21:02 · 127 阅读 · 0 评论 -
第1章:JAVA语言概述与开发环境
1.1 下载JDK 1.2 PATH环境变量 将java和javac两个命令路径放入PATH变量中,才可以在cmd中执行这两个命令 1.3 第一个JAVA程序 1.3.1 编译java文件 编译:javac -d destir(class文件存放目录) srcFile(java文件所在路径) #这个.表示当前路径,即将当前路径加入到CLASSPATH中即可以执行 #如果执行该命令的路径为C://w...原创 2019-10-08 19:08:13 · 136 阅读 · 0 评论