
A一:java基础笔记
a592381841
一个喜欢写代码的人
展开
-
java基础1-数据类型
一、java数据类型 1、整形数据类型 数据大小 数据范围 int 4个字节(4*8=32) -2^31~ 2^31 short 2个字节(2*8=16) -2^15~2^15 long 8个字节(8*8=64) -2^63~2^63 byte 1个字节(8位) -2^7~2^7 2、浮点型类型...原创 2017-08-24 16:37:04 · 161 阅读 · 0 评论 -
JAVA基础16-反射机制
反射机制概念:在运行状态下,对于任意一个类,都能够知道这个类的所有属性和方法,对于任何一个对象,都能够调用他的任意方法和属性。反射机制常用的几个类java.lang.Classjava.lang.reflect.Constructorjava.lang.reflect.Fieldjava.lang.reflect.MethodClass对象的获取使用反射机制,首先必须获取Clas...原创 2018-12-02 18:18:05 · 148 阅读 · 0 评论 -
JAVA基础17-泛型
泛型作用 :意味着编写的代码可以被多个不同类型对象所重用注意:在泛型代码的内部,无法获得任何有关泛型参数类型的信息一、 泛型类 泛型方法 泛型接口1-1.泛型类 具有一个或者多个类型变量的类语法:[修饰符] class 类<泛型> [extends 父类][ implements 接口列表]1-2.泛型方法 定义一个带有类型参数的方法[可以定义在普通类或者泛型类中]...原创 2018-12-02 20:12:27 · 220 阅读 · 0 评论 -
JAVA基础18-数组
数组原创 2018-12-02 20:13:34 · 129 阅读 · 0 评论 -
JAVA基础21-IO流
1.流分类不同角度对流进行分类:1.根据数据单位不同,字符流,字节流2.数据流方向可分为,输入流,输出流3.功能不同,可分为:节点流,处理流。2.流的体系Java中所有的流类位于java.io包,分别继承以下四种抽象流类型类型字节流字符流输入流InputStreamReader输出流OutputStreamWriter3.常见的流介绍...原创 2018-12-04 22:26:47 · 114 阅读 · 0 评论 -
JAVA基础13-内部类
概念将一个类的定义放在另一个类的定义内部。.this和.new.this:在内部类中调用本内部类对象所关联的外部类对象。【生成对外部类对象的引用】.new 创建某个内部类对象package com.demo9a;public class OutClass { public void f(){System.out.println("aaa");} public Inner in...原创 2018-11-30 22:41:18 · 100 阅读 · 0 评论 -
JAVA基础22-多线程(一)【多线程的概念,线程状态及其转换】
多线程一.概念 1. 进程:进程是表示资源分配的的基本概念,又是调度运行的基本单位,是系统中的并发执行的单位。 2. 线程:单个进程中执行中每个任务就是一个线程。线程是进程中执行运算的最小单位。且线程只能属于一个线程。 3.线程是一种轻量级的进程。 4.线程没有地址空间,线程包含在进程的地址空间中。 ...原创 2018-12-06 00:11:52 · 170 阅读 · 0 评论 -
JAVA基础26-数据库连接池
数据库连接池 数据库连接池负责分配,管理,释放数据库连接,它允许应用程序重复使用一个现有的数据库连接,而不是重新建立一个。编写数据库连接池编写数据库连接池必须实现java.sql.DataSource接口 在DataSource构造函数中批量创建与数据库的连接,并把创建的连接加入LinkedList对象中。 实现getConnection方法,让getConnecti...原创 2018-12-12 22:41:59 · 177 阅读 · 0 评论 -
JAVA19基础-枚举类型
枚举类型一.对比两种方法利用 public static final 定义常量public class Light { public static final int RED=1; public static final int GREEN=2; public static final int YELLOW=3;}利用枚举类型定义常量public enum LightA { ...原创 2018-12-03 22:38:13 · 122 阅读 · 0 评论 -
JAVA基础20-注解
注解没有元素的注解 被称为标记注解Java.Lang中的三个注解:@Override,表示当前的方法定义,将覆盖超类中的方法。@Deprecated,让编译器做出警告@SuppressWarnings:关闭某些警告1.元注解元注解:负责解释其他注解的注解。1-1. @Documented能够将注解中的元素包含到 Javadoc 中去。1-2. @Target@Target ...原创 2018-12-03 23:39:13 · 107 阅读 · 0 评论 -
JAVA基础23-多线程(二)【线程局部变量和未捕获异常处理器】
一、线程局部变量 在线程中使用共享变量肯定是存在风险。为了规避这个风险,利用同步机制,volatile这些方法都可以。但是也可为每个线程分配一个变量。使用ThreadLocal辅助类为各个线程提供各自的实例。 ThreadLocal为每个使用该变量的线程分配一个独立的变量副本,每一个线程都可以独立地改变自己的副本,而不影响其他线程。 2 ThreadLocal方法及使用示例...原创 2018-12-09 16:31:39 · 193 阅读 · 0 评论 -
JAVA基础23-多线程(三)【synchronized,ReentranLock,volatile、死锁】
一、同步 大多数多线程应用中,两个或两个以上的线程需要共享对同一数据的存取,此时出现多个程序交替处理该数据,从而导致数据出现讹误。9-1.Synchronized关键字 两种用法: 方法和代码块 方法:方法签名中加入synchronized关键字。 代码块:使用synchronized块对需要进行同步的代码段进行同步。...原创 2018-12-09 16:51:41 · 239 阅读 · 0 评论 -
JAVA基础24-多线程(四)【读写锁,阻塞队列,线程池】
一、读写锁 使用步骤二、阻塞队列 (BlockingQueue)提供线程安全的队列访问方式;当阻塞队列进行插入数据时,若队列满,则线程阻塞,直到队列非满的时候当阻塞队列取数据时,若队列为空,则线程阻塞直到队列非空时候。 阻塞队列,常用于“生产者和消费者”的场景,生产者往队列中添加元素,消费者往队列中拿出元素。方法\处理方式 抛出异常 返回特殊...原创 2018-12-09 19:36:40 · 416 阅读 · 0 评论 -
JAVA基础11-《JAVA编程思想》笔记A(基本类型的方法重载,默认构造器,初始化和清除)
关于基本类型的方法重载char类型:若重载时,找不到相关的类型,则自动转换为int类型。其他基本类型: 1.寻找自己的数据类型。 2.若找不到,则自动增大到最近的数据类型。 3.若直接输入整数,则默认为int类型当传入数据类型大于其能承受的最高类型,必须提前做窄化类型转换,否则会报错默认构造器当类中未定义有参构造器时,无参构造器是隐式声明的。当类中定义了有参构造器,若无显...原创 2018-11-26 23:38:09 · 110 阅读 · 0 评论 -
JAVA基础15-JAVA是如何在运行时识别对象和类的信息
JAVA是在运行时识别对象和类的信息?一、RTTI(Run-Time Type Information),通过运行时类型信息程序能够使用基类的指针或引用来检查这些指针或引用所指的对象的实际派生类型。【在运行时,识别一个对象的类型】二、JAVA在运行时,识别对象和类信息的两种方式:1.“传统的RTTI” :程序在编译时已经知道了所有类型2.反射机制 :运行时,发现和使用类的信息。三、关...原创 2018-12-02 15:43:04 · 1439 阅读 · 0 评论 -
JAVA基础14-字符串(String)和java正则表达式简述
一、String对象是不可变的每次修改String,实际上在java对象堆都会创建一个新的对象、二、StringBuffer和StringBuilderStringBuffer :效率低,线程安全的(同步)StringBuilder:效率高,线程不安全(不同步)三、 正则表达式3-1、作用: 字符串匹配,查找,替换3-2、基础知识符号含义.匹配一个字符...原创 2018-12-02 13:58:43 · 146 阅读 · 0 评论 -
java基础2-变量,运算符,基本数据类型转换,字符串,输入输出,程序基本结构,大数值,数组
变量声明格式 : 数据类型名 变量名变量名规范: 以字母开头或者数字构成的序列(不能是java保留字) 常量 使用final指示常量final修饰的变量只能被赋值一次,不可以修改 (风格:习惯上常量都是大写的) 运算符算术运算符 + - * / % *= -= /= +=自增自减运算符 ++ ,--关系运算符与...原创 2017-08-24 17:28:36 · 241 阅读 · 0 评论 -
java基础3-面向对象三大特性(封装,继承,多态)和抽象
java-面向对象三大特性封装: 把事物封装到类中。这个类包括该客观事物的属性、行为。同时也对变量进行保护(在面向过程中,当我们对某个变量进行随意操作,可能会影响到其他程序)。继承:让某一个类从另一个类中获得部分方法和属性。(子类会拥有父类的public、protected属性和方法)多态:接口的多种实现方式叫做多态。通过指向父类变量来调用不同子类中实现方法。...原创 2018-07-18 15:39:51 · 273 阅读 · 0 评论 -
java基础4-类变量,成员变量,类方法,成员方法,构造方法,父类子类调用顺序
类是对象的模板。类中包括: 成员变量、成员方法、静态变量、静态方法、构造方法、静态代码块、动态代码块。类方法(静态方法)语法: 修饰符 static 返回类型 方法名(参数列表){ ....//只能使用类变量、不能使用实例变量}使用语法: 对象名.变量名 类名.变量名类变量(静态变量)语法: 修饰符 static 变量类型 变量名使用...原创 2018-07-18 16:05:04 · 771 阅读 · 0 评论 -
JAVA基础5-abstract关键字和final关键字
abstractabstract可以修饰变量和类。 abstract不能和final同时使用。 abstract不能修饰成员变量,也不能修饰局部变量,以及构造器; abstract不能修饰类方法,即不能和static放在一起。 abstract不能和private同时修饰。抽象方法[修饰符] abstract 方法名(...);//抽象方法无方法体//抽象类...原创 2018-07-18 16:56:44 · 732 阅读 · 0 评论 -
java基础6--一张图说明-深克隆和浅克隆
深克隆和浅克隆浅克隆浅克隆解决基本数据类型问题。是ok的。Object中的clone()方法 它提供了一个浅克隆的方法。 它是一个native方法。深克隆深克隆的方法是: 1. 实现Cloneable接口 2. 使用public访问修饰符重新定义clone方法。...原创 2018-07-18 17:12:43 · 576 阅读 · 0 评论 -
java基础7-接口
接口定义[修饰符] interface 接口名<泛型> [extends 父接口]实现[修饰符] class 类<泛型> [extends 父类] [implements 接口列表]注意 1. 接口不能实例化 2. 接口中能定义变量。变量默认修饰符是public static final 3. 接口中的方法都是抽象方法,方法默原创 2018-07-18 17:18:51 · 191 阅读 · 0 评论 -
java基础8-异常和日志
异常当程序遇到异常的时候,如何处理? 1。直接处理掉 2。抛给上层调用者处理分类异常分类: 1. 检查性异常:Java.Lang.Exception及其子类 2. 运行时异常:Java.Lang.RuntimeException及其子类 3. 错误:Java.Lang.Error自定义异常类 1. 所有异常都必须是 Throwable 的子类。 2...原创 2018-07-18 17:32:25 · 136 阅读 · 0 评论 -
JAVA基础-9JVM虚拟机的内存模型(转载)
JVM的逻辑内存模型如下:程序计数器1、程序计数器程序计数器(Program Counter Register)是一块较小的内存空间,它的作用可以看做是当前线程所执行的字节码的行号指示器。字节码解释器工作时就是通过改变这个计数器的值来选取下一条需要执行的字节码指令,分支、循环、跳转、异常处理、线程恢复等基础功能都需要依赖这个计数器来完成。每条线程都有一个独立的程序计数器,各条线...转载 2018-07-18 18:06:06 · 311 阅读 · 0 评论 -
Java基础10-集合类
集合迭代器 Iterable 实现iterable接口之后,可以用“for each”循环 Next() 方法迭代下一个元素 remove() 移除迭代器上次next方法返回的一个元素(可选操作)。 集合接口 Collection接口扩展了iterable接口 Collection集合继承树Map集...原创 2018-07-18 18:26:40 · 131 阅读 · 0 评论 -
JAVA基础12---继承、实现、依赖、关联、聚合、组合及其联系与区别,代理模式,状态模式
组合定义: 在类中new另一个类的对象。使用场景:各个组件之间无联系class a{}public class b{a a=new a(); }继承定义:子类从父类得到特性使用场景:子类需要具有父类的功能,且各个子类之间具有差异class A{}public class Ba extends A{}代理定义:在代理类中创建某功能的类,调用类的一些方法以...原创 2018-11-28 21:53:10 · 735 阅读 · 1 评论 -
JAVA基础25-JDBC
一、JDBC的经典用法: .二、JDBC图解 三、JDBC使用步骤:导入相应数据库的jar包。 加载驱动类 class.forName("类名") // Class.forName("com.mysql.jdbc.Driver") 给出数据库的URL //URL格式: ...原创 2018-12-09 23:38:56 · 173 阅读 · 0 评论