随笔分类 - Java 基础
摘要:安装JDK1.8,安装时会安装jdk、jre。 如果只是在IDEA中写写代码,安装完jdk,在IDEA中指定jdk路径就可以了。 如果要在命令行下执行jdk的命令,比如java、javac,或者要使用tomcat等依赖jdk的,就需要配置jdk的环境变量。 jdk环境变量的配置 1、JAVA_HOM
阅读全文
摘要:以CentOS为例。 切换到root账户 检查是否已安装过jdk yum list --installed|grep jdk 或者java -version看下能不能执行。 如果已安装过但jdk版本不符合要求,先yum remove卸载。 方式一、从软件源下载安装 1、列出可用的jdk yum li
阅读全文
摘要:Annotation,注解。 常见注解: 1、@Override 限定重写父类的方法。@Override相当于告诉编译器检查这个方法,要保证父类包含一个被该方法重写的方法,否则会编译出错。 主要是为了避免一些低级错误,比如要重写父类的info()方法,我们一不小心写成了inf0(),并不会报错,加上
阅读全文
摘要:当程序运行出现意外情况时,系统会自动生成一个Exception对象来通知程序。 Exception(异常)、Error(错误)都继承自Throwable。 1 try{ 2 //可能出错的代码 3 } 4 catch(XxxException e){ 5 System.out.println(e.g
阅读全文
摘要:如果不使用泛型,把一个对象添加到集合中,会被存储为Object型;取出来也是Object型,往往需要强制类型转换。 泛型,即参数化类型(parameterized type)。 使用泛型后,集合中只能存储该类型的对象,存储为该类型,取出来也是该类型。 Java7之前: Java7的菱形语法: Jav
阅读全文
摘要:Java9的日志级别: ALL 最低级别,系统会输出所有的日志信息,会生成大量的·、冗余的日志 TRACE 输出系统的各种跟踪信息,会生成大量的·、冗余的日志 DEBUG 输出调试信息,会生成较多的日志 INFO 输出系统提示用户的信息 WARNING 输出警告信息 ERROR 输出错误信息 OFF
阅读全文
摘要:国际化是指应用程序运行时,可根据客户端OS的国家/地区、语言的不同而显示不同的界面,比如客户端OS的语言环境为大陆的简体中文,程序就显示为简体中文,客户端OS的语言环境为美国——英语,程序就显示美式英语。 OS的语言环境可在控制面板中手动设置。 国际化的英文单词是Internationalizati
阅读全文
摘要:正则表达式是一个用于匹配字符串的模板,用于匹配字符串。 正则表达式语法 . 小数点,可匹配\n之外的任何一个字符,要匹配小数点,用\. x x是某一具体字符,表示匹配该字符 \d 匹配0-9之间的一个数字 \D 匹配\d之外的任一个字符 \s 匹配任一个空白,包括空格、制表符、回车符、换行符 \S
阅读全文
摘要:Java提供了Date、Calendar两个类用于处理日期、时间。 但Date的大部分构造器、方法已经过时,不在推荐使用,Calendar类又过于复杂,所以Java8推出了一套新的时间日期库。 1、Date类 Date常用的构造函数: Date() 生成一个代表当前日期时间的Date对象,相当于Da
阅读全文
摘要:Random和ThreadLocalRandom类均用于生成伪随机数。 Random的构造函数: Random() 默认以系统当前时间为种子,相当于Random(System.currentTimeMillis()) Random(long seed) 常用方法: nextXxx() 生成对应类型的
阅读全文
摘要:Math类 Math提供了一系列的静态方法来进行数学运算。 Math.PI π Math.E e Math.toDegrees(double 弧度) 弧度转角度 Math.toRadians(double 角度) 角度转弧度 Math.sin/cos/tan() Math.sqrt() 算数平方根
阅读全文
摘要:String类是不可变类,创建了一个String对象后,该String对象中的字符序列不能被改变。 StringBuilder是字符序列可变的字符串类,提供了一系列修改字符串的方法。 StringBuffer和StringBuilder相似,但StringBuffer是线程安全的,StringBui
阅读全文
摘要:System类 System类代表当前操作系统,System类提供了静态方法getProperty(String key)获取指定的环境变量、系统属性。 System.in表示标准输入,通常是键盘 System.out表示标准输出,通常是显示器 Runtime类 Runtime类代表当前Java程序
阅读全文
摘要:jar包 JAR文件全称 Java Archive File,意为Java档案文件。JAR文件是一种压缩文件,也被称为JAR包。 JDK的bin目录下有个jar.exe,负责jar包的相关操作。 生成.jar包:1、File->Project Structure->Artifacts-> + ->J
阅读全文
摘要:外部类、接口只能使用public、abstract、final修饰,不能使用private、protected、static修饰,就是说外部类、接口的访问权限只能是默认、public。 局部变量不能使用static修饰,但可以使用final修饰。 内部类提供了更好的封装,可以把内部类隐藏在外部类之内
阅读全文
摘要:实例有限且固定的类,叫做枚举类。比如季节只有“春”、“夏”、“秋”、“冬”。 在早期,直接使用静态常量表示枚举:public static final String SPRING="春";public static final String SUMMER="夏"; 在Java5.0之中新增了一个枚举
阅读全文
摘要:接口 接口里面的方法全部是抽象方法。 接口是从多个相似类中抽象出来的规范,接口体现了规范(设计)和实现分离的设计哲学,接口本身并不提供任何实现。 访问权限 interface 接口名{ //成员变量默认使用(也只能是)public static final修饰,完全等价于public static
阅读全文
摘要:继承 父类,也称为基类、超类。 语法:修饰符 class 子类名 extends 父类名{.......} 方法重写,也叫方法覆盖,要求:方法名相同、形参表相同,子类方法的返回值类型要小于或等于父类方法的返回值类型,子类方法抛出的异常类要小于或等于父类方法抛出的异常类,子类方法的访问权限要大于或等于
阅读全文
摘要:final关键字可修饰类、变量(包括成员变量、局部变量)、方法。 final意为最后的、最终的。用于保护类的成员不被修改。 被final修饰的类不能被继承,就是说不能有子类 被final修饰的变量,必须由程序员显示赋初始值,一旦获得了初始值,就不能修改其值。基本类型的变量不能改变其值,引用类型的变量
阅读全文
摘要:Java内存分配: ◆寄存器:我们在程序中无法控制 ◆栈:存放基本类型的数据和对象的引用,以及成员方法中的局部变量 ◆堆:存放对象本身(成员变量+成员方法的引用) ◆静态域:存放在对象中用static定义的静态成员 ◆常量池:存放常量 ◆非RAM存储:硬盘等永久存储空间 栈的存取速度比堆快,仅次于寄
阅读全文