随笔分类 -  Java入门

摘要:throw关键字: 作用: 可以使用throw关键字在指定的方法中抛出指定的异常 使用格式: throw new xxxException("异常产生的原因"); 注意: 1.throw关键字必须写在方法内部 2.throw关键字后边的new对象必须是Exception或者Exception的子类对 阅读全文
posted @ 2019-12-26 09:18 糖不甜,盐不咸 阅读(133) 评论(0) 推荐(0)
摘要:List接口、Set接口、Map接口:里面添加了一个静态方法of,可以一次性给集合添加多个元素 使用前提:当集合中存储的元素的个数已经确定,不再改变 注意:1.of方法只适用于上述三个接口,不适用于接口的实现类,实现类没有of方法 2.of方法的返回值是一个不能改变的集合,集合不能再使用add,pu 阅读全文
posted @ 2019-12-25 14:48 糖不甜,盐不咸 阅读(250) 评论(0) 推荐(0)
摘要:1.使用 Collections 工具类中的 sort() 方法 参数不同: void sort(List list) 在自定义类User里面实现Comparable<User>接口,并重写抽象方法compareTo(Student o); void sort(List list, Comparat 阅读全文
posted @ 2019-12-24 22:20 糖不甜,盐不咸 阅读(2131) 评论(0) 推荐(0)
摘要: 阅读全文
posted @ 2019-12-24 14:57 糖不甜,盐不咸 阅读(377) 评论(0) 推荐(0)
摘要:栈:先进后出 队列:先进先出 数组:查询快,增删慢 链表:增删快,查询慢 红黑树: 阅读全文
posted @ 2019-12-24 13:38 糖不甜,盐不咸 阅读(105) 评论(0) 推荐(0)
摘要:泛型类和泛型方法的使用:类名<泛型> 方法名<泛型> public class MyClass<E> { public void print(E e) { System.out.println(e); } } public class GenericTest { public static void 阅读全文
posted @ 2019-12-23 23:52 糖不甜,盐不咸 阅读(207) 评论(0) 推荐(0)
摘要:在涉及到线程安全时,推荐使用:因为效率更高 ArrayList 对应 CopyOnWriteArrayList HashSet 对应 CopyOnWriteArraySet TreeSet 对应 ConcurrentSkipListSet HashMap 对应 ConcurrentHashMap 而 阅读全文
posted @ 2019-12-23 13:05 糖不甜,盐不咸 阅读(164) 评论(0) 推荐(0)
摘要:StringBuilder和StringBuffer内部都是通过char[]来实现的。(jdk1.9后,底层把char 数组变成了byte[]。)唯一不同的就是StringBuffer内部操作方法都加上了synchronized关键字,因为保证了线程安全,同时效率相比StringBuilder较低。 阅读全文
posted @ 2019-12-23 09:00 糖不甜,盐不咸 阅读(287) 评论(0) 推荐(0)
摘要:成员内部类: public class Body { // 外部类 public class Heart { // 成员内部类 // 内部类的方法 public void beat() { System.out.println("心脏跳动"); System.out.println("我叫:" + 阅读全文
posted @ 2019-12-22 10:40 糖不甜,盐不咸 阅读(276) 评论(0) 推荐(0)
摘要: 阅读全文
posted @ 2019-12-21 23:51 糖不甜,盐不咸 阅读(85) 评论(0) 推荐(0)
摘要:多态:把子类看成是父类,把实现类看成是接口,这样类就具有多种形态,称为多态。 在多态中访问成员变量,访问的是父类中的成员变量。 在多态中访问成员方法,先访问的是子类,看看子类有没有覆盖重写要访问的父类中的方法,没有则向上找父类 多态的好处: 阅读全文
posted @ 2019-12-21 21:38 糖不甜,盐不咸 阅读(107) 评论(0) 推荐(0)
摘要:Java 7以前 接口中可以包含的内容:常量,抽象方法 Java 8 接口中额外可以包含的内容:默认方法,静态方法 Java 9 接口中额外可以包含的内容:私有方法 注意事项: 1.接口当中的抽象方法,修饰符必须是public abstract,可以省略不写,默认就是 2.接口不能直接使用,需要一个 阅读全文
posted @ 2019-12-21 16:33 糖不甜,盐不咸 阅读(304) 评论(0) 推荐(0)
摘要:抽象类可以没有抽象方法,但有抽象方法的一定是抽象类 抽象类也有构造方法,但并不是提供给自己创建对象的,因为抽象类不能创建对象,而是给它的子类(不是抽象的)在创建对象时初始化父类用的 继承抽象类的子类必须重写所有抽象方法,否则它也必须是抽象的 阅读全文
posted @ 2019-12-21 15:26 糖不甜,盐不咸 阅读(170) 评论(0) 推荐(0)
摘要:方法覆盖重写注意事项: 1.必须保证方法名相同,返回值类型也相同 @Override:写在方法前面,用来检测方法的覆盖重写是否有效,这个注解不是必要的,就算不写,方法覆盖重写符合要求也是正确的 2.子类方法的返回值类型必须【小于等于】父类方法的返回值类型 3.子类方法的修饰符必须【大于等于】父类方法 阅读全文
posted @ 2019-12-21 10:44 糖不甜,盐不咸 阅读(310) 评论(0) 推荐(0)
摘要:static关键字既可以修饰成员变量,也可以修改成员方法,修饰的成员变量和成员方法可以直接通过类名调用,也可以通过对象调用(其实即使是通过对象调用,也会被翻译成类名调用),建议通过类名调用。 成员方法用static修饰后,就成为了静态方法,静态方法不属于对象,而是属于类。 注意事项: 1.静态方法中 阅读全文
posted @ 2019-12-18 20:33 糖不甜,盐不咸 阅读(315) 评论(0) 推荐(0)
摘要:package com.fgy.demo; public class demo06 { public static void main(String[] args) { String str1 = "aaa "; String str2 = null; String str3 = " bbb"; S 阅读全文
posted @ 2019-12-18 19:40 糖不甜,盐不咸 阅读(3942) 评论(0) 推荐(0)
摘要: 阅读全文
posted @ 2019-12-18 18:41 糖不甜,盐不咸 阅读(120) 评论(0) 推荐(0)
摘要:package com.fgy.demo; import java.util.ArrayList; import java.util.Random; /** * ArrayList实现存储随机数字 */ public class demo05 { public static void main(St 阅读全文
posted @ 2019-12-18 17:47 糖不甜,盐不咸 阅读(313) 评论(0) 推荐(0)
摘要:package com.fgy.demo; /** * 数组元素反转 */ public class demo05 { public static void main(String[] args) { int[] arr = {10, 20, 30, 40, 50}; System.out.prin 阅读全文
posted @ 2019-12-17 21:46 糖不甜,盐不咸 阅读(1161) 评论(0) 推荐(0)
摘要:虚拟机底层结构: 从上往下分为 四层部分: 【1】类加载器 ClassLoader .class 的字节码文件会通过类加载器 ( ClassLoader )加载到 Java虚拟机当中。 【2】JVM 内存结构 (包括有 方法区、堆、虚拟机栈、程序计数器、本地方法栈) 【3】执行引擎 (包括有 解释器 阅读全文
posted @ 2019-12-17 20:59 糖不甜,盐不咸 阅读(150) 评论(0) 推荐(0)