java基础
文章平均质量分 57
ミク辉夜
一只菜狗
展开
-
java中的重写和重载
重载(Overloading) (1) 方法重载是让类以统一的方式处理不同类型数据的一种手段。多个同名函数同时存在,具有不同的参数个数/类型。重载Overloading是一个类中多态性的一种表现。 (2) Java的方法重载,就是在类中可以创建多个方法,它们具有相同的名字,但具有不同的参数和不同的定义。调用方法时通过传递给它们的不同参数个数和参数类型来决定具体使用哪个方法, 这就是多态性。 (3) 重载的时候,方法名要一样,但是参数类型和个数不一样,返回值类型可以相同也可以不相同。无原创 2022-06-10 19:58:42 · 322 阅读 · 0 评论 -
java中的封装
封装是面向对象程序设计四大基本概念之一,其余三个分别是继承,多态和抽象。封装是一种可以使类中的字段私有并能通过公有方法来访问私有字段的技术。如果一个字段被声明为私有,它就不能在类的外部被访问,从而隐藏了类内部的字段。基于这个原因,封装有时也被称为数据隐藏。封装可以被认为是一种能够保护代码和数据被定义在类外的其它代码任意访问的屏障。访问数据和代码由一个接口严格控制。封装的主要好处是修改实现的代码而又不会破坏其他人使用代码。封装的这个特性使代码具有可维护性、灵活性以及扩展性。封装的概念:将类的某些信息隐藏在类原创 2022-06-09 19:58:30 · 246 阅读 · 0 评论 -
java线程池(二)
只是对代码的分析每执行一次进行输出,也就是“nihao 123456”,返回true这里输出true这里通过循环创建了10个原创 2022-06-09 19:37:11 · 70 阅读 · 0 评论 -
java中的反射
反射的核心是在程序运行时动态的加载类并获取类的信息一般情况下,我们使用某个类时必定知道它是什么类,是用来做什么的。于是我们直接对这个类进行实例化,之后使用这个类对象进行操作。而反射则是一开始并不知道我要初始化的类对象是什么反射就是在运行时才知道要操作的类是什么,并且可以在运行时获取类的完整构造,并调用对应的方法。反射的实现1、class.forName(“全类名”):将字节码文件加载进内存,然后返回给class对象2、类名.class:通过类名获取class对象-----》一般知道类名称才使用3、对象.ge原创 2022-06-08 19:53:03 · 169 阅读 · 0 评论 -
java中的构造器
1.构造器要与类同名2.当我们new对象时,new 后边的方法就代表着我们的构造函数3.我们的每一个类当中都有一个默认的不显示的无参构造器,当我们这个类当中写一个构造器的时候,我们默认调用的就是我们显示的构造器4.我们的构造器是没有返回值的,如果有返回值,即便你的方法名和类名相同那么也不是构造函数5.我们的类当中是有一个或一个以上的构造函数构造器是一个创建对象时被自动调用的特殊方法,为的是初始化。构造器的名称应与类的名称一致。当创建一个个对象时,系统会该对象的属性默认初始化,基本类型属性的值为0(数值类型)原创 2022-06-08 19:49:20 · 768 阅读 · 0 评论 -
java异常体系
error 错误由jvm虚拟抛出exception 异常本身程序可以处理的错误可以用try catch 解决解决异常的方式:try----catch-----finally:try--catch---finally : 异常处理 一旦发生异常并被try--catch捕获,异常右try--catch处理,不会影响下边代码的指向 try: 对有可能存在异常的语句的使用 catch: 一旦try语句发生错误那就就走catch finally: 语句在任何条件下都会执行 --- 资源释放 throws----原创 2022-06-07 20:06:24 · 70 阅读 · 0 评论 -
java的多态
是允许你将父对象设置成为和一个或更多的他的子对象相等的技术,赋值之后,父对象就可以根据当前赋值给它的子对象的特性以不同的方式运作。简单的说,就是一句话:允许将子类类型的指针赋值给父类类型的指针。a. 编译时多态:方法的重载;b. 运行时多态:JAVA运行时系统根据调用该方法的实例的类型来决定选择调用哪个方法则被称为运行时多态。(我们平时说得多的事运行时多态,所以多态主要也是指运行时多态);a. 面向对象的三大特性:封装、继承、多态。从一定角度来看,封装和继承几乎都是为多态而准备的。这是我们最后一个概念,也是原创 2022-06-07 20:02:52 · 81 阅读 · 0 评论 -
java进程和线程
进程就是正在运行的程序,它是系统资源调度的独立单位,并且一个进程可以执行多个任务,而线程就是程序执行的任务,它是程序使用CPU的基本单位,因此也可以说线程是依赖于进程的。单进程的计算机一次只能做一件事情,而多进程的计算机可以做到一次做不同的事情,比如一边听音乐,一边听打游戏,这两件事情虽然感觉起来是在同时一起进行的,但其实是CPU在做着程序间的高效切换,这才让我们觉得是同时进行的。线程就是程序(进程)执行的任务,它分为单线程和多线程。单线程也就是做的事情专一,不会分神去做别的事,也就是程序只有一条执行路径;原创 2022-06-06 19:57:30 · 183 阅读 · 0 评论 -
final、static 和 java static 乱斗
先初始化块(非静态) 然后初始化属性(非静态) 然后调初始化方法这是新建对象顺序先执行t1,然后t1里先执行初始化块,然后因为构造函数最后执行,先跳过去,然后下边是j,j是非静态的,执行,最后输出t1,然后t2也这样1 类加载从上往下执行,依次执行静态的初始化语句和初始化块,而且类加载优先于对象创建。(静态初始化语句和初始化块只加载一次)2 创建本类的对象时:从上往下执行一次非静态的初始化语向和初始化块,最后执行构造函数。3 创建另一个类对象时:先加载另一个类的静态语句和静态初始化块(同样也只是第一次原创 2022-06-04 14:28:16 · 74 阅读 · 0 评论 -
基础数据类型、自动拆装箱
byte:8位,最大存储数据量是255,存放的数据范围是-128~127之间。1字节short:16位,最大数据存储量是65536,数据范围是-32768~32767之间。2字节int:32位,最大数据存储容量是2的32次方减1,数据范围是负的2的31次方到正的2的31次方减1。4字节long:64位,最大数据存储容量是2的64次方减1,数据范围为负的2的63次方到正的2的63次方减1。8字节float:32位,数据范围在3.4e-45~1.4e38,直接赋值时必须在数字后加上f或F。4字节double:6原创 2022-06-04 20:15:36 · 108 阅读 · 0 评论