- 博客(9)
- 收藏
- 关注
原创 Java异常总结
Java异常总结 Java提供了大量的异常类,这些类都继承子java.lang.Throwable类 首先看一下Throwable的继承体系 Error:一般是指与虚拟机相关的问题,如:系统崩溃、虚拟机错误、内存空 间不足、方法调用栈溢出等。这类错误将会导致应用程序中断,不做针对性 处理。直接修改代码。 Exception:分为运行时异常和编译时异常。 运行时异常:如:空指针异常、指定的类找不到、数组越界、方法传递 参数错误、数据类型转换错误。可以编译通过,但是一运行就停止了, 程序不会自己处理;
2021-09-24 14:51:07
199
原创 Java 构造函数
作用 就是对 对象进行初始化的。对象会自动调用对应的构造函数。 那么类中没有定义过构造函数,那么new对象到底是怎么初始化的呢? 其实class定义的类中,在没有声明任何构造函数的情况下,类中默认会有一个空参数的构造函数。 如果类中自定义了构造函数,默认的构造函数就没有了。 构造函数在类中有多个的情况下,是以重载的形式存在的。 例: class Person { String name; Person(String s)//有参构造 { this.name = s; } Perso
2021-09-07 13:25:12
110
原创 Java 内部类和匿名内部类
内部类 定义在类中的类。 好处:可以直接访问外部类中的成员。 外部类要访问内部类需要创建内部类的对象。 内部类直接访问外部类的原理:因为内部类持有了外部类的引用。外部类名.this 例: class Outer { private int num = 4; //内部类。 class Inner { int num = 5; void show() { int num = 6; System.out.println("inner show "+Outer.this.num);
2021-09-07 13:24:07
125
原创 Java 抽象类和接口
抽象的特点: 1,抽象方法没有方法体,必须由抽象关键字所修饰。 2,抽象方法一定存在于抽象类中,必须由抽象关键字所修饰。 3,抽象类不可以实例化。因为调用抽象方法没意义。 4,子类必须覆盖抽象类的所有抽象方法后,子类就可以实例化。否则该子类还是抽象类。 abstract class animal { abstract void shut(); } 抽象类的常见问题: 1,抽象类一定是父类吗? 是的,因为只有子类覆盖了抽象类中的方法,才可以创 建对象,去使用这些方法。 2,抽象类中有构造方法吗?
2021-09-07 13:21:12
93
原创 Java 中代码块总结
构造代码块 作用:给所有的对象初始化 例 : class Person { private String name = "baby"; {//构造代码块作用,给所有的对象初始化。 System.out.println("code......"+this.name); cry(); } Person()//构造函数只给对应的对象初始化。 { // cry(); System.out.println("person() run...."); } Person(String nam
2021-09-07 13:18:47
58
原创 java 中this static final 关键字总结
this关键字 为什么用this? 区分局部变量和成员变量同名的情况。 用this标识的是成员变量。 例: public void setName(String name) { this.name = name; } this到底是指谁? this其实就代表对象,代表哪个对象呢? 哪个对象调用了this所在的函数。this就指向哪个对象。 (this就代表着当前这个对象) static关键字 特点: 1,静态的数据被对象所共享。 2,它优先于对象加载并存在。随着类的加载而加载。 3,静态的数据多了
2021-09-07 13:13:27
75
原创 Java 面向对象三大特征总结
1.封装 1.提高程序的安全性,保护数据 2.隐藏代码的实现细节,对外提供访问方式 3.统一接口 4.系统可维护增强了 2. 继承 继承的本质是对某一批类的抽象 提高了代码的复用性 让类与类之间产生了关系,给多态提供了前提 什么时候写继承? 事物之间存在着所属关系时,才继承。xxx是yyy中的一种。 super注意点 1.super调用父类的构造方法,必须在构造方法的第一个 2.super必须只能出现在子类的方法或构造方法中! 3.super和this不能同时调用构造方法! this:本身调用这个对象(没有
2021-09-07 13:08:49
121
原创 Java内存划分
Java内存划分 1.栈内存 存储都是局部变量。只要是在方法中定义的变量都是具备变量。 一旦变量的生命周期结束该变量就被释放。 2.堆内存 存储都是实体(对象) 每一个实体都有一个首地址值。 堆内存的变量都有默认初始化值。不同类型不一样。 当实体不再使用时,就会被垃圾回收机制处理。 3.方法区 1、方法区中保存着,类、静态变量、静态方法、常量、普通方法 2、方法区是线程共享的;当有多个线程都用到一个类的时候,而这个类还未被加载,则应该只有一个线程去加载类,让其他线程等待; 3、方法区的大小不必是固定的,jv
2021-09-07 13:01:02
138
原创 windows10 JDK环境配置
鼠标右键 “此电脑” 选择属性,之后会出现一个弹窗,点击 “高级系统设置” 再点环境变量。 点击 “环境变量” 然后会看到这样的画面: 在系统变量里新建,出现一个弹窗 配置path,找到系统变量中的path,双击或者点编辑。然后新建输入 %JAVA_HOME%\bin 图中红框。 然后点确定保存,出去之后再点确定,然后再点确定。 验证环境变量配置 打开命令行窗口,输入java -version 然后输入javac 然后输入java 好了,环境变量就配置完毕了。 ...
2021-09-07 12:58:46
58
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人