
java基础学习笔记
文章平均质量分 81
mu_jiao
这个作者很懒,什么都没留下…
展开
-
JVM内存分配
JVM内存从Java的这种分配机制来看,堆栈又可以这样理解:堆栈(Stack)是操作系统在建立某个进程时或者线程(在支持多线程的操作系统中是线程)为这个线程建立的存储区域,该区域具有先进后出的特性。每一个Java应用都唯一对应一个JVM实例,每一个实例唯一对应一个堆。应用程序在运行中所创建的所有类实例或数组都放在这个堆中,并由应用所有的线程共享.跟C/C++不同,Java中分配堆内存是自动转载 2015-05-28 15:54:18 · 560 阅读 · 0 评论 -
黑马程序员————javaBean 与 内省
javaBean是一个特殊的java类。通过PropertyDescriptor类获得get和set方法。import java.beans.PropertyDescriptor;import java.lang.reflect.Method;public class JavaBeanTest { public static void main(String[] args原创 2015-05-13 17:44:46 · 380 阅读 · 0 评论 -
黑马程序员————反射中的泛型
泛型的基本应用:》泛型经常在集合中运用,当使用泛型,那么就不需要强制类型转换了,并未把错误提前到编译器,方便程序员解决问题。》泛型是提供给Jvac编译器使用的,可以限定集合中输入类型,编译器编译带类型说明的集合时会去掉“类型”信息,使程序运行效率不受影响,对于参数化的泛型类型,getClass()方法的返回值和原始类型一样。由于编译生成的字节码会去掉泛型的类型信息,只要能跳过编译器,就可以原创 2015-05-19 23:17:06 · 448 阅读 · 0 评论 -
黑马程序员————java基础----数组
数组一、数组介绍 数组就相当于一个容器,里面存放相同数据类型的数据。和集合的最大区别是:数组长度固定。、二、数组初始化格式 ①int[] arr=new int[3];//表示该数组存放了3个int类型的数据 这会有默认初始化值,均为0;String类型的为null。 ③int[] arr=new int[]{3,原创 2015-03-18 23:49:15 · 492 阅读 · 0 评论 -
黑马程序员————java高薪技术---反射单元1
1-1自动拆箱与装箱自动装箱:Integer num=12;即把基本数据类型int装箱成Integer对象。自动拆箱:int num2=num+12;即把Integer类型拆箱成Int类型进行运算。public class TestJava { public static void main(String[] args){ Integer num1=10; Integ原创 2015-05-12 08:48:09 · 470 阅读 · 0 评论 -
黑马程序员————类加载器初步
一.类加载器及其委托机制的深入分析类加载器是一个java对象(除了BootStrap它是javaVM提供的类加载器)。每个类加载器都应该有一个父类。 类加载器的委托机制:当java虚拟机要加载某一个java类时,到底由哪个类加载器加载呢?1>首先当前线程原创 2015-05-16 23:26:23 · 514 阅读 · 0 评论 -
黑马程序员————网络Socket编程
网络编程概述:要素:ip地址,端口号,传输协议模型:OSI参考模型,TCP/IP参考模型网络模型:应用层:数据表现规律,及应用层的特征TCP UDP在传输层。IP地址协议在网络层。数据链路层:底层传输协议。物理层:网线数据封包:加上每一层的特有信息。数据传输就是通过数据封包,拆包这样完成的。IP原创 2015-05-19 22:06:34 · 748 阅读 · 0 评论 -
黑马程序员————IO流------(2)
BufferedWriter:缓冲区的出现是为了提高流的操作效率而出现的。所以在创建缓冲区之前,必须要先有流对象。该缓冲区中提供了一个跨平台的换行符newLine();练习:package IO;import java.io.*;public class BufferedWriterDemo { public static void main(String[] args)th原创 2015-05-20 20:17:50 · 392 阅读 · 0 评论 -
黑马程序员————IO流详解---(1)
概述:一个字节8bit,每个bit位是0.1两种状态。字节作为最基本的存储单位。英文字符:一个字节中文字符:两个字节机器上都是字节,二进制数据。文件操作:FileWriter:构造时会抛出异常(只要与设备发生联系,就会抛出异常),当该目录有同名文件时,会覆盖该文件,创建一个新文件。java调用windows写操作,java本身不能写数据,不能系统写操作不同。原创 2015-05-11 09:37:08 · 513 阅读 · 0 评论 -
黑马程序员————泛型初步
泛型概述:泛型是JDK1.5出现的新特性,用于解决安全问题,是一个类型安全机制。好处:(1)将运行时期出现的问题ClassCastException,转移到编译时期,方便程序员解决问题,更加安全。 (2)避免了强制转换的麻烦。泛型使用:泛型格式:通过经常在集合中会用到泛型来限定所要传入的类型。泛型类:什么时候定义泛型类呢?当类中要操作的引用数据类型不确定时,原创 2015-05-14 15:39:16 · 442 阅读 · 0 评论 -
黑马程序员————java常见对象
java常见对象及常见方法一、System ① public final class System 该类不能被继承。 ②字段和方法均是静态修饰的。 ③ 字段摘要: static PrintStrean err;//"标准"错误输出static InputStream in;//“标准”输入流。键盘或原创 2015-03-21 08:33:16 · 408 阅读 · 0 评论 -
黑马程序员—————Map集合
Map集合概述:该集合和Collection集合最大的区别是:Collection直接存放值,而Map集合存放的是键值对。 Map集合常见方法: Map集合是一对一对往里存放的,而且要保证键的唯一性。1.添加put(K key,V value);putAll(Map m);2.删除clear();remove(Object key)原创 2015-05-20 13:49:10 · 701 阅读 · 0 评论 -
黑马程序员————java注解初步
注解是什么?注解相当于标记,加了注解就等于为程序打上标记,以后,javac编译器,开发工具及其他程序可以用反射来了解你的类及各种元素以上的有无何种标记,根据你的标记,执行相应操作。注解在哪用?注解可以加在包,类,字段,方法,方法的参数以及局部变量上。注解举例: @SuppressWarning("deprecation");//告诉编译器,我知道过时了,你不要拦截我原创 2015-05-14 14:25:04 · 461 阅读 · 0 评论 -
黑马程序员————面向对象初步
面向对象初步:一、成员变量和局部变量内存分配问题: 当局部变量的代码执行到时,会为其开辟栈内存空间,一旦这段代码执行完毕后,立刻会释放 栈内存,也就是说,本来存在栈内存里面的属性之类的都会消失不见。 而成员变量不同,只有在new对象时,才会在堆内存中为对象开辟空间,只要这个对象有被类 引用变了指向,那么它就一直存在,当没有引用变量指向它时,它就变成垃圾,但是并原创 2015-04-22 23:23:36 · 340 阅读 · 0 评论 -
黑马程序员————线程学习
线程知识总结一、什么是线程?1、线程是组成进程(也就是一个个正在执行的程序)的小单元,具有原子性,不可拆分。2、线程控制进程的执行,一个进程至少有一个线程(main主线程)3、进程只要一启动就会分配空间,而真正执行的是线程。二、创建线程的方法1.继承Thread类,复写run()方法。2.实现Runnable接口类,复写run()方法。注意:一般最好采用实现Ru原创 2015-04-26 00:04:44 · 415 阅读 · 0 评论 -
黑马程序员————代理类相关知识及AOP初步
什么是代理类代理类是用来为原有程序的功能扩展。程序中的代理1>要为已经存在的多个具有相同接口的目标类的各个方法增加一些系统功能。2>编写一个与目标类具有相同接口的代理类,代理类的每个方法调用目标类的相同方法,并在调用方法时加入系统功能的代码。3>如果采用工厂模式和配置文件的方式进行管理,则不需要修改客户端程序,在配置文件中配置是使用目标类还是代理类,这样也很容易切换。原创 2015-05-17 21:17:36 · 454 阅读 · 0 评论 -
黑马程序员————IO流------(3)
File类:流只能操作数据,若想要用流操作被文件封装的数据信息,必须用file对象。>在判断文件是否是文件或是目录时,必须先判断文件是否存在。且最好用绝对路径进行判断。>file类的常见方法:1、创建boolean createNewFile():在指定位置创建文件,如果存在,则不创建。boolean mkdir():创建文件夹boolean mkdirs():创建多级原创 2015-05-21 21:00:21 · 449 阅读 · 0 评论 -
JVM的内存区域划分
由于Java程序是交由JVM执行的,所以我们在谈Java内存区域划分的时候事实上是指JVM内存区域划分。在讨论JVM内存区域划分之前,先来看一下Java程序具体执行的过程: 如上图所示,首先Java源代码文件(.java后缀)会被Java编译器编译为字节码文件(.class后缀),然后由JVM中的类加载器加载各个类的字节码文件,加载完毕之后,交由JVM执行引擎执行。在整个程序执行过程转载 2015-05-28 20:10:16 · 6911 阅读 · 0 评论 -
黑马程序员————java集合框架详解
集合干什么的?当数据多了,我们可以用对象存储。那么当对象多时,我们就可以用数组和集合来存储。 数组和集合的区别是:数组只能存同类型的数据,并且数组的长度是固定的。 集合可以存多种类型,并且长度可变。每个容器对数据的存储方式不同,这种存储方式称为数据结构。集合存放的是对象地址,不是对象实体。迭代器的作用迭代器用于集合取出元素的方式。取出方式定原创 2015-05-08 09:55:43 · 525 阅读 · 0 评论