![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java基础
昭zzz
路漫漫其修远兮,吾将上下而求索!
展开
-
数据库连接池以及C3P0和DBCP
数据库连接池C3P0DBCPDBUtil有关数据库连接池:1.为什么要使用数据库连接池? 资源重用性、自己创建消耗资源 便于管理数据库的连接2.两种实现方式:C3P0数据库连接池 和 DBCP数据库连接池如上的两种方式都是属于第三方的jar包,故而在使用之前都需要导包,当然连接第三方数据库也需要导入第三方数据库的相关驱动。C3P0:一般解压C3P0的压缩包,在其lib包下的c3p原创 2016-07-18 21:34:49 · 674 阅读 · 0 评论 -
java基础之三大特性封装和隐藏
java封装和隐藏Java中 类 通过将 属性 声明为私有的(private),防止其他类直接访问,再提供公共的(public)方法间接访问:getXxx()和setXxx()实现对该属性的操作,以实现下述目的:隐藏一个类中不需要对外提供的实现细节;使用者只能通过事先定制好的方法来访问数据,可以方便地加入控制逻辑,限制对属性的不合理操作;便于修改,增强代码的可维护性;类的封装性当类创建对象以后,如果原创 2016-07-17 08:46:51 · 1274 阅读 · 0 评论 -
java基础之三大特性 类的继承和方法重写
1 类的继承 2 方法的重写 类的继承 public class Student extends Person{ public String school; }Student类继承了父类Person的所有属性和方法(构造器除外),并增加了一个属性school。Person中的属性和方法,Student都可以利用。子类不能继承父类的私有方法,私有方法只能在本类中访问,而原创 2016-07-17 08:47:17 · 574 阅读 · 0 评论 -
java基础之三大特性 多态
目录多态虚拟方法调用对象多态的总结对象的类型转换(casting)多态多态在java中有俩个体现1方法的多态,方法的重载overload和方法的重写override。2对象的多态,抽象类和接口。多态:对象的多种父类表现形态。本态引用:对象引用指向本类类型的变量多态引用:对象引用指向父类类型的变量java引用型变量有两个类型,一个是编译时类型,和运行时类型。编译时类型由声明该变量时使用的类型决定。运行原创 2016-07-17 08:47:52 · 338 阅读 · 0 评论 -
java高级特性之集合概述
java中的集合概述map 接口总结java集合学习1 java中存储数据的方式 1 数组 (基本数据类型+引用数据类型)。2 集合(对象)数组存储数据的缺点1:数组一旦创建,长度固定 2:数组不能直接确定有效元素的个数java中的集合概述:java集合接口:Collection 接口 和Map 接口(Collection接口 表示不按照添加顺序存放对象的集合,而且集合内的元素可以重复即 无序可重复原创 2016-07-17 08:51:43 · 2111 阅读 · 0 评论 -
java高级特性之集合概述 其二
Map接口Map中数据存储特点1,Map中数据存储的是Key—Value键值对2,Map中所有的key是由Set存放,所有的key彼此不同。key中的自定义的类需要重写hashCode和equals方法3,Map中所有的values是由Collection存放的。values中的自定义类需要重写equals方法。4,一个key-value键值对构成一个entry。所有的entry都是由set存放。e原创 2016-07-18 21:00:30 · 318 阅读 · 0 评论 -
java高级特性之反射
获取父类的泛型java反射概述java Reflection,java中的反射(Reflection)被认为是动态语言的关键,反射机制允许程序在执行期借助Reflection API取得任何类的内部信息。并且能直接操作任意对象的内部属性和方法。简单来说,反射就是加载类,并解剖出类的各个组成部分。java反射机制提供的功能:在运行时判断任意一个对象所属的类 在运行时构造任意一个类的对象 在运行时判原创 2016-07-18 21:05:02 · 1230 阅读 · 0 评论 -
java高级特性之多线程 线程池
系统启动一个新线程的成本是比较高的,因为它涉及与os交互。这种情况下,系统启动时即创建大量空闲的线程,就可以很好地提高性能,尤其是当程序需要创建大量生存期很短暂的线程时。 除此之外,使用线程池可以有效地控制系统中并发线程的数量。避免因并发创建的线程过多,导致系统性能下降,JVM崩溃。 Java 5以前,需要手动创建自己的线程池;Java 5开始,新增了Executors工厂类产生原创 2016-07-18 21:06:26 · 390 阅读 · 0 评论 -
java高级特性之泛型
泛型擦除反射机制自定义泛型类自定义类型方法java泛类型相关知识1 为什么使用泛型解决元素存储时候的安全性问题,同时解决获取集合元素的时候类型强转的问题。提高代码的重用率。例如编写一个泛型类,而我们不去关心类的具体类型,而用T来代表其变化的类型。T不能代表基本数据类型。泛型注意:在使用泛型的表达式中,如果两边都使用了泛型,那么两边的泛型必须一致。如果表达式只有一边使用了泛型,那么表达式的另一边可以不原创 2016-07-18 21:14:34 · 1294 阅读 · 1 评论 -
java常用类库的方法
java中用String类来创建按字符串变量String s = new String(“i love java”);String s = “i love java ”;String类的常用方法== 与 equals 方法的比较==引用类型比较,(是否指向同一个对象)只有指向同一个对象才返回true。用==比较的时候,两边的数据类型必须兼容。(自动类型转换除外)否则编译报错。equal()所有类都继原创 2016-07-18 21:17:09 · 1060 阅读 · 0 评论 -
java基础关键字之Static和final
1 Static 关键字2初始化块2 Final关键字关键词staticclass Circle {private double radius;public Circle(double radius) {this.radius = radius;}public double getArea() {return Math.PI *radius*radius;} }Circle c1 = new原创 2016-07-17 08:42:25 · 410 阅读 · 0 评论 -
java高级特性之 枚举,注解,可变行参
java枚举java注解java 新特性 可变参数java枚举:在类的对象有限的情况下,可是使用枚举类的方式创建有限个类的对象。单例模式是一种特殊的枚举类。自定义枚举类:1,私有化构造器2,在类的内部创建若干个类的对象,public static final3,在类中的其他额外属性,定义为 private final, 可以额外的再声明getter()方法。枚举类的使用:2.使用enum关键字定义枚原创 2016-07-17 08:45:08 · 2090 阅读 · 0 评论 -
java高级特性之IO流
缓冲流转换流对象流打印流标准输入输出流随机访问流数组流有关flush():所有的处理流的输出流,最外层流需要刷新。javaIO流1认识File类File类的对象表示一个文件或者一个文件目录绝对路径:包含盘符的文件完整路径相对路径:在当前路径下的文件路径File类中的方法,涉及到文件或文件目录的新建、删除、获取文件的路径、获取文件的大小。并没有涉及到向文件中写入或读出内容。这样的读取或写入的功能就需要原创 2016-07-17 08:44:42 · 2957 阅读 · 0 评论 -
java高级特性之异常
java核心技术中使用异常机制的技巧: 1,异常处理不能代替简单的测试,异常的基本原则是只有在异常的情况下使用异常机制。 2,不要过分的细化异常 3,利用异常层级结构,寻找更加适合的子类或者自定义异常类 4不要压制异常,对应可能出现异常的方法通过throws的方式抛出 5检测错误的时候,苛刻比放任更好。 6不要羞于传递异常 『5,6条可以总结为 早抛出,晚捕获』java异常java 程原创 2016-07-17 08:44:09 · 495 阅读 · 0 评论 -
JDBC基础
Driver接口prepareStatment类通用的增删改通用的查询JDBC的概述:在Java中,数据库存取技术可分为如下几类: JDBC直接访问数据库 JDO技术 第三方O/R工具,如Hibernate, ibatis 等JDBC是java访问数据库的基石,JDO, Hibernate等只是更好的封装了JDBC。JDBC(Java Database Connectivity)是一个独立于特定数据原创 2016-07-18 21:29:38 · 2447 阅读 · 0 评论 -
java网络编程基础
网络传输协议InetAddress类Socket类理解:Socket常用方法基于TCP的socket编程基于UDP的socket编程URL编程总结java网络编程java天生就是支持网络的一种语言。java提供的网络类库,可以很容易的实现网络连接,而联网的底层细节被隐藏在java的本地安装系统里面,由JVM进行控制,java实现了跨平台的网络库,因此程序员面对的是一个统一的网络编程环境。网络编程的两原创 2016-07-18 21:22:44 · 1742 阅读 · 0 评论 -
java基础之抽象类和接口
1 抽象类2 接口抽象类 abstract class 随着继承层次中一个个新子类的定义,类变得越来越具体,而父类则更一般,更通用。类的设计应该保证父类和子类能够共享特征。有时将一个父类设计得非常抽象,以至于它没有具体的实例,这样的类就可以声明为抽象类。abstract 修饰 类 即 抽象类 abstract 修饰 方法 即 抽象方法抽象方法只有声明 没有实现(没有方法体)例如 abstract原创 2016-07-17 08:41:47 · 227 阅读 · 0 评论 -
java基础概念
欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦:Markdown和扩展Markdown简洁的语法代码块高亮图片链接和图片上传LaTex数学公式UML序列图和流程图离线写博客导入导出Markdown文件丰富的快捷键快捷键加粗 Ctrl + B 斜体 Ctrl + I 引用 Ctrl原创 2016-07-16 23:16:14 · 402 阅读 · 0 评论 -
java基础之数组
数组for语句数组一维数组申明:type[] name; type name[],一般都是以第一种方式声明。注意 数组声明不能指定其长度。int [4] arr; 错误int arr[4]; 错误。int[] arr = new int[3];动态初始化int[] arr;arr= new int [3];int a[] = new int[]{1,12,34,};静态初始化int a[] = {2原创 2016-07-17 08:30:51 · 186 阅读 · 0 评论 -
java基础之抽象类和接口
1 抽象类2 接口抽象类 abstract class 随着继承层次中一个个新子类的定义,类变得越来越具体,而父类则更一般,更通用。类的设计应该保证父类和子类能够共享特征。有时将一个父类设计得非常抽象,以至于它没有具体的实例,这样的类就可以声明为抽象类。abstract 修饰 类 即 抽象类 abstract 修饰 方法 即 抽象方法抽象方法只有声明 没有实现(没有方法体)例如 abstract原创 2016-07-17 08:32:03 · 372 阅读 · 0 评论 -
java基础关键字之this 和 super Object 和包装类
this关键字 super关键字 对象实例化过程this关键字 它在方法内部使用,即这个方法所属对象的引用; 它在构造器内部使用,表示该构造器正在初始化的对象 this代表当前的对象,可以调用类的属性,方法和构造器。(当前方法的调用者)使用情况 :1.当形参与成员变量重名时,如果在方法内部需要使用成员变量,必须添加this来表明该变量是 类成员(因为变量具有就近原则,而javac只能识别当原创 2016-07-17 08:38:47 · 996 阅读 · 0 评论 -
java基础之内部类
内部类在java中允许一个类的定义位于另一个类的内部,前者称为内部类,后者称为外部类。inner class 一般定义在类中,即与属性和方法并列,或者定义在方法中。但是注意 内部类不能与外部类 重名。在其他的类中若要访问内部类,比如给出完整的类名,即类名的限定名必须也要加上。Outer.Inter1 inter1 = new Outer().new Inter();//内部类对象Outer.In原创 2016-07-17 08:39:58 · 268 阅读 · 0 评论 -
java基础之数据类型和变量
数据类型:java 数据类型分为基本数据类型和引用数据类型(类 类型);基本数据类型无需new,只要声明就可以创建例如 int i = 0;基本数据类型的运行速度快,是因为它存储在内存的栈空间中,变量直接保存“值”,java中基本数据类型的存储空间是固定大小的。引用数据类型需要new 开辟堆空间,例如:String str = new String(“abc”);基本类型为什么要有包装类型,因为包装原创 2016-07-16 23:23:39 · 362 阅读 · 0 评论 -
java高级特性之多线程
创建分线程的方式单例模式懒汉式线程安全问题java线程同步java线程通信java的内存模型java线程认识线程:每一个java程序都有一个隐含的主线程,即main()方法。程序–>进程 —>线程 理解何时需要多线程操作:1,程序需要执行多个任务的时候。2,程序需要实现一个等待的任务时,如等待用户输入,文件读写,网络操作,搜索等。3,程序需要后台运行的程序时。创建分线程的方式:1,继承Thread类原创 2016-07-18 21:09:59 · 2567 阅读 · 0 评论