随笔分类 -  java学习

个人学习使用,所有收集仅供参考。
摘要:1、继承Thread类 子类覆写父类中的run方法,将线程运行的代码存放在run中。 建立子类对象的同时线程也被创建。 通过调用start方法开启线程。 2、实现Runnable接口 子类覆盖接口中的run方法。 通过Thread类创建线程,并将实现了Runnable接口的子类对象作为参数传递给Th 阅读全文
posted @ 2019-07-04 14:34 樊伟胜 阅读(140) 评论(0) 推荐(0)
摘要:进程是指一个内存中运行的应用程序,每个进程都有自己独立的一块内存空间,一个进程中可以有多个线程。比如在Windows系统中,一个运行的xx.exe就是一个进程。 Java程序的进程里有几个线程:主线程, 垃圾回收线程(后台线程) 线程是指进程中的一个执行任务(控制单元),一个进程中可以运行多个线程, 阅读全文
posted @ 2019-07-04 14:32 樊伟胜 阅读(331) 评论(0) 推荐(0)
摘要:处理日期,时间; 大部分的方法已过时,不推荐使用,但是你使用过时的方法也不会报错。 Date() 分配 Date 对象并初始化此对象,以表示分配它的时间(精确到毫秒)。 Date(long date) 分配 Date 对象并初始化此对象,以表示自从标准基准时间(称为“历元(epoch)”,即 197 阅读全文
posted @ 2019-07-04 14:31 樊伟胜 阅读(218) 评论(0) 推荐(0)
摘要:System 类包含一些与系统相关的类字段和方法。它不能被实例化,类中所有属性和方法都是static,可直接被System调用。 常用方法: static void exit(int status) 终止虚拟机的运行.对于发生了异常情况而想终止虚拟机的运行,传递一个非0数值,对于正常情况下退出系统传 阅读全文
posted @ 2019-07-04 14:31 樊伟胜 阅读(157) 评论(0) 推荐(0)
摘要:Math类 public final class Math extends Object 以下X表示double,float,int, long abs(X x):求绝对值 max(X x1,X x2):求最大值 min(X x1,X x2):求最小值 public static double ra 阅读全文
posted @ 2019-07-04 14:30 樊伟胜 阅读(959) 评论(0) 推荐(0)
摘要:String是不可变类,一旦String对象被创建,包含在对象中的字符序列是不可变的,直到对象被销毁; StringBuffer 与 StringBuilder对象则是可变的! 举例说明这两个的好处:(不用每次新建对象,效率高!) package reviewDemo; public class D 阅读全文
posted @ 2019-07-04 14:30 樊伟胜 阅读(157) 评论(0) 推荐(0)
摘要:String():初始化一个新的 String 对象,使其表示一个空字符序列,并不是返回空(不等于 null)。 String(StringBuffer buffer):根据StringBuffer对象来创建String对象; String(StringBuilder builder):同上 cha 阅读全文
posted @ 2019-07-04 14:26 樊伟胜 阅读(166) 评论(0) 推荐(0)
摘要:当异常出现在当前方法中,程序只对异常进行部分处理,还有一些处理需要在方法的调用者中才能处理完成,此时还应该再次抛出异常,这样就可以让方法的调用者也能捕获到异常; Eg: public static void buy(String price) throws Exception { try { if( 阅读全文
posted @ 2019-07-04 14:25 樊伟胜 阅读(1984) 评论(0) 推荐(0)
摘要:异常的统一出口: 不管try块程序是否异常,也不管哪个catch执行,finally块总会执行。 try语句块或会执行的catch语句块使用了JVM系统退出语句例外;//System.exit(1); try块必须和 catch块或和finally同在,不能单独存在,二者必须出现一个。 不要在fin 阅读全文
posted @ 2019-07-04 14:20 樊伟胜 阅读(765) 评论(0) 推荐(0)
摘要:自行抛出一个异常对象,抛出异常类的对象; 若throw抛出的是Runtime异常: 程序可以显示使用try...catch来捕获并处理,也可以不管,直接交给方法调用者处理; 若throw抛出Checked异常: 要么放在try里自己处理,要么放在一个throws声明的方法里面,交给调用者处理。 Eg 阅读全文
posted @ 2019-07-04 14:14 樊伟胜 阅读(819) 评论(0) 推荐(0)
摘要:在可能出现异常的方法上声明抛出可能出现异常的类型: 声明的时候尽可能声明具体的异常,方便更好的处理. 当前方法不知道如何处理这种异常,可将该异常交给上一级调用者来处理(非RuntimeException类型的异常)。 方法一旦使用throws声明抛出方法内可能出现的异常类型, 该方法就可以不再过问该 阅读全文
posted @ 2019-07-04 14:13 樊伟胜 阅读(2419) 评论(0) 推荐(0)
摘要:异常分类: 编译时被检查异常; > Checked异常 在程序中必须使用try...catch处理; 编译时不被检测的异常; > Runtime异常 可以不使用try...catch处理,但一旦出现异常就将由JVM处理。 异常的分类之Runtime异常 RuntimeException(运行时异常) 阅读全文
posted @ 2019-07-04 14:08 樊伟胜 阅读(231) 评论(0) 推荐(0)
摘要:声明异常时尽可能声明具体异常类型,方便更好的处理; 方法声明几个异常就对应有几个catch块; 若多个catch块中的异常出现继承关系,父类异常catch块放在最后; 在catch语句块使用Exception类作为异常类型时: 所有子类实例都可以使用父类接收(向上转型),即所有的异常对象都可以使用E 阅读全文
posted @ 2019-07-04 14:07 樊伟胜 阅读(434) 评论(0) 推荐(0)
摘要:异常处理的5个关键字 try ,catch, finally throw, throws 我的总结: 捕获异常:先捕获小异常再捕获大异常。 程序是调出来的,不是写出来的;多测试是程序员的必修课。 异常处理后,程序不会因为出现异常而退出! 异常处理格式 try{ //可能出异常的代码 } catch( 阅读全文
posted @ 2019-07-04 14:05 樊伟胜 阅读(587) 评论(0) 推荐(0)
摘要:异常:就是不正常,是指程序在运行时出现的不正常情况。其实就是程序中出现的问题。这个问题按照面向对象思想进行描述,并封装成了对象。因为问题的产生有产生的原因、有问题的名称、有问题的描述等多个属性信息存在。当出现多属性信息最方便的方式就是将这些信息进行封装。异常就是java按照面向对象的思想将问题进行对 阅读全文
posted @ 2019-07-04 14:03 樊伟胜 阅读(123) 评论(0) 推荐(0)
摘要:适合只使用一次的类 不能是抽象类,因为系统在创建匿名内部类的时候,会立即创建匿名内部类的对象。 匿名内部类不能定义构造器,因为匿名内部类没有类名。 格式: new 父类构造器([实参列表]) 或 接口() { //匿名内部类的类体部分 } 阅读全文
posted @ 2019-07-04 12:21 樊伟胜 阅读(140) 评论(0) 推荐(0)
摘要:使用enum声明,默认直接继承了java.lang.Enum类,而不是Object类; 枚举类的对象是固定的,实例个数有限,不可以再new( ),枚举对象后可以跟()。 枚举元素必须位于枚举类体中的最开始部分,枚举元素后要有分号与其他成员分隔。 枚举类的构造方法的权限修饰符默认是private; 一 阅读全文
posted @ 2019-07-04 12:21 樊伟胜 阅读(885) 评论(0) 推荐(0)
摘要:相同点: 都位于继承的顶端,用于被其他实现或继承; 都不能实例化; 都包含抽象方法,其子类都必须覆写这些抽象方法; 区别: 抽象类为部分方法提供实现,避免子类重复实现这些方法,提供代码重用性;接口只能包含抽象方法; 一个类只能继承一个直接父类(可能是抽象类),却可以实现多个接口;(接口弥补了Java 阅读全文
posted @ 2019-07-04 11:55 樊伟胜 阅读(330) 评论(0) 推荐(0)
摘要:使用一个现成的类,但是它的接口不完全符合你的需求,我只想要它其中的一个方法,不想覆写其他的方法。 比如,窗体有变大,变小,关闭的行为,但是我现在只需要关闭行为; package reviewDemo; //适配器模式:只想用其中的某一个方法,用适配器作为中间的过渡 interface Windows 阅读全文
posted @ 2019-07-04 11:55 樊伟胜 阅读(184) 评论(0) 推荐(0)
摘要:制定一个标准,让别人去实现或者说满足它! Eg: interface USB{//定义USB标准 void useUSB();//USB有使用USB的行为 } 简单工厂模式 构建一个工厂出来,在里面进行生产,用的时候直接拿 我的总结: 好处:屏蔽不同子类实现的差异,提高代码的可拓展性和可维护性; p 阅读全文
posted @ 2019-07-04 11:54 樊伟胜 阅读(212) 评论(0) 推荐(0)