java概念知识
文章平均质量分 57
.章鱼哥.
这个作者很懒,什么都没留下…
展开
-
Java中堆与栈的概念
栈(FILO:先进后出)栈的优缺点优点: 存取速度比堆要快,仅次于CPU中的寄存器,栈数据可以共享缺点: 存在栈中的数据大小与生存期必须是确定的,缺乏灵活性栈中存储的数据有哪些?mian方法基本类型变量引用类型变量方法函数句柄存储过程当在一段代码块中定义一个变量时,java就在栈中为这个变量分配内存空间当该变量超过它的作用域后,java会自动释放掉为该变量分配的内存空间,该内存空间可以立刻被另作他用特点超过它本身的作用域后,会自动释放掉,为该变量分配的内存空间栈是先原创 2021-08-21 10:48:39 · 201 阅读 · 1 评论 -
网络基本概念
CDN网址当很多人访问较远的服务器的资源时,资源传输过程到响应速度较慢,并且非常占用运营商的带宽运营商为了优化这个问题则使用了CDN的方式,相当于你访问的数据在较近的服务器存放了一份远程服务器的缓存,大家都去访问缓存就可以了。如果访问人数较少则直接访问原来的服务器地址...原创 2021-07-27 19:34:33 · 80 阅读 · 0 评论 -
Java注解
Java注解概念:注解刚学会感觉很无用其反之,后期注解有非常大的作用增强我们的java代码可实现无配置(xml)程序注解分为三类JDK自带注解@Deprecated:标记就表明这个方法已经过时了,但我就要用,别提示我过期2)元注解自定义注解...原创 2021-05-26 21:54:05 · 53 阅读 · 0 评论 -
Java设计模式
##Java设计模式前言设计者模式是一种编程思想,是前任总结下来的一些最佳的实践。JAVA一共有23种设计模式,这里只先介绍一种最常见的单例设计模式单例设计(最为广泛的)思想:当一个程序中多次用到一个类,而我们总是new出很多同样的对象,特别浪费内存。而单例模式只控制一个程序在声明周期结束之前只会被创建出一个类饿汉式(在类加载时就创建好):提供构造方法,并将其私有化(为了不让外界随意实例化对象)成员方法创建出本类对象 使用 private+static修饰1)privat原创 2021-05-26 21:21:05 · 44 阅读 · 0 评论 -
java反射
Java反射概念:反射时java程序开发语言的特征之一,它允许运行中的 Java 程序对自身进行检查,或者说“自审”,也有称作“自省”。反射时比较强大的,能直接操作程序的私有属性,这个规定被反射赤裸裸的打破了外部类不能调用的问题反射就像一面镜子,它可以在运行时获取一个类的所有信息,可以获取到任何定义的信息(包括成员变量,成员方法,构造器等),并且可以操纵类的字段、方法、构造器等部分。什么时候需要反射...原创 2021-05-26 20:46:25 · 47 阅读 · 0 评论 -
Java内部类
内部类内部类的说明如果一个类存在的意义就是为指定的另一个类,可以把这个类放入另一个类的内部。叫内部类比如说一台车的发动机它属于车的一个重要的零件。但是发动机里也有不同的零件,这些零件可以想成是零件中的零件。在类中看来也就是类中的内部类内部类的概念内部类可以直接访问外部类中的成员,包括私有成员(方法)外部类要访问内部类的成员,必须要建立内部类的对象(new)在成员位置的内部类是成员内部类在局部位置的内部类是局部内部类成员内部类位置:类里方法外调用:class o原创 2021-05-26 19:47:35 · 41 阅读 · 0 评论 -
Lambda表达式(JDK1.8)
Lambda表达式表达式是Java8中最重要的新功能之一。1.本质上它是一段匿名内部类,也可以是一段可以传递的代码2.可以替代只有一个抽象函数的接口实现3.告别匿名内部类,代码看起来更简洁易懂4.同时还提升了对集合、框架的迭代遍方、过滤数据的操作。5.它又被称为java中的函数式编程,那什么是函数式接口呢?请看下文Lambda的优点对于匿名内部类的缺点就是代码行数太多,且无法统一管理通过Lambda表达式极大的减少了代码行数,使代码可读性变得更高只需通过一行代码即可完成匿名函数的繁原创 2021-05-23 16:25:16 · 188 阅读 · 0 评论 -
JAVA泛型
前言:泛型是JDK1.5推出的新特性,泛型概念非常重要,它是程序的增强器,它是目前主流的开发方式本质上就是编译器为了提供更好的可读性而提供的一种手段,技巧,虚拟机层面是不存在所谓“泛型”的概念的一般都是通过泛型的语法 <> 来约束集合中元素的类型,编译器可以在编译期根据泛型约束提供一定的类型安全检查,这样可以避免程序运行时才暴露BUG,代码的通用性也会更强,且编译后这样的部分会被删除,不出现在最终的源码中泛型的作用及好处在编译时期就检查数据的类型,如果不是要求类型,就原创 2021-05-20 13:31:56 · 57 阅读 · 0 评论 -
JAVA API的大纲介绍
Object类的方法1.Object.tostring();父类默认是对象内存地址值如果想看对象的属性方法值,必须重写Object.toString的方法2.Object.hashCode();1.经过地址的hash算法后返回对象hash值3.Object. equals();底层用了==进行对象间的比较,==比较的是两个对象的地址值如果要判断两个对象间的所有属性值相同,比较结果为true,就需要重写equals();否则使用的是Object的默认实现,通过==比较的是两个对象原创 2021-05-18 20:38:17 · 244 阅读 · 2 评论 -
异常
异常概述异常是一些用来封装错误信息的对象它由异常的类型、提示信息、报错的行号提示三部分组成异常的继承结构Throwable: 顶级父类 --Rrror:系统错误,无法修复 --Exception:可以修复的错误 --RunTimeException --ClassCastExcepthon --ClassNotFoundException异常的处理方式当程序遇到异常,通常有两种处理方式捕获:直接捕获异常(方法自己处理)向上抛出:在调用抛出异常的方法捕获异常(交原创 2021-05-13 20:27:58 · 54 阅读 · 0 评论 -
static和final关键字
static和final关键字static关键字创建时间:被static修饰的属性或方法会在类加载时创建,直到程序结束操作对象:用来修饰成员变量和方法(一般写在权限修饰符之后)补充:静态资源是优先于对象进行加装的,随着类的加装而加装静态资源会被全局共享,并且唯一(一处修改,全部改变)为什么使用static静态资源可以被类名直接调用(不需要实例化对象)静态资源只能调用静态资源,非静态资源即可以调用非静态资源也可以调用静态资源静态方法和普通成员方法静态资源可以调用原创 2021-05-12 17:45:39 · 112 阅读 · 0 评论 -
面向对象的概念(二)
类继承的概念继承是面向对象最显著的一个特征,继承是从已有的类中派生出新的类,新的类能吸收已有类的数据属性和行为,并扩展新的能力.Java继承是会用已存在的类的定义作为基础建立新类的技术新类的定义可以增加新的数据或者新的功能,也可以使用父类的功能,但不能选择性的继承父类(超类/基类)(被private修饰过的成员变量或者方法)这种继承使得复用以前的代码非常容易,能够大大的缩短开发的周期,降低开发费用.继承的特点使用extends关键字来表示继承关系相当于子类把父类的功能复制了一份,但pr原创 2021-05-12 13:20:46 · 94 阅读 · 0 评论 -
this和super的使用
this的使用概念:1.this代表本类对象的一个引用对象2. this还可以在本类构造方法之间相互调用(必须在构造方法的第一行),但请注意只能是单向调用,不能互相来回的调用否则死循环形式://方式一(构造方法的互相调用,必须在构造方法的第一行写)this();//方式二(对成员属性赋值)this.name = name;super的使用概念:1.super代表的是父类的一个引用对象,可以通过这个关键字使用父类的内容2.调用父类构造方法时必须在子类的构造方法的第一行创建/原创 2021-05-11 17:41:16 · 88 阅读 · 0 评论 -
java运行原理 及 JDK_JRE_JVM解释
JAVA运行原理我们编写的文件是以”.java”为后缀的源代码文件,Ctrl+S保存时会触发编译器Eclipse对写好的代码进行编译,编译后生成以”.class”为后缀的字节码文件,当Ctrl+F11运行代码时,JVM就会加载字节码文件, 并加载main方法执行程序, 进而在控制台显示代码效果JDK JRE JVM解释JDK(Java Development Kit) — Java开发工具包 — JRE+开发工具开发java程序最小的环境为JDK,所以JDK是JAVA语言的核心JRE(原创 2021-05-11 09:17:42 · 87 阅读 · 0 评论 -
Java的关键字/注解、变量、常量
Java基础的定义1.标识符1.标识符定义:可以简单的理解成一个名字2.应用场景: 常量、变量、方法、类和包等的名称3.命名规则:由字母、数字、下划线(_)、美元符($)组成,但不能包含 @、%、空格等其它特殊字符和关键字2.关键字3.注释注释类型注释方式快捷键单行注释//Ctrl+/多行注释/* 内容 */Ctrl+shift+\文档注释/** 内容 */输入“/**” 之后按回车添加注释4.变量定义:在JAVA中,我们需要记录一些数据原创 2021-05-10 20:23:31 · 162 阅读 · 0 评论 -
java的两种数据类型
java基本类型[八种]查看基本类型最大最小值数据类型最小值最大值byteByte.MIN_VALUEByte.MAX_VALUEshortShort.MIN_VALUEShort.MAX_VALUEintInteger.MIN_VALUEInteger.MAX_VALUElongLong.MIN_VALUELong.MAX_VALUEfloatFloat.MIN_VALUEFloat.MAX_VALUEdoubleDouble原创 2021-05-10 20:21:54 · 99 阅读 · 0 评论 -
JAVA运算符
例: 1 ^ 1 = false 0 ^ 0 = false 1 ^ 0 = true。1 && 2 --当1是false时,2会被短路,提高程序的效率 (又名:短路与)1 & 2 --结果想要是true,要求1和2都必须是true(两边运算都会去算)在调用a++的时候,只会在运行玩当前一行的代码后,才会执行a的本身加1。0表示False ,1表示true。相同为false , 不同为true。操作数一共有多少就是几目运算符!原创 2021-05-10 20:21:18 · 66 阅读 · 0 评论 -
Java类中的结构
Java面向对象成员变量1.定义:写在类中且在方法体外的叫做成员变量2.都会自带默认值3.作用域:整个类中,类消失了,变量才会释放局部变量1.定义:写在方法里的叫局部变量2.没有默认值,必须给局部变量复制3.作用域:也就是方法里或者局部代码块中,方法运行完内存就释放了方法定义的格式修饰符 返回值 方法名(参数列表…){方法体}public static void main(String args){}方法的重载方法的重载是指在一个类中定义多个同名的方法,但是每个方法的参数列原创 2021-05-10 20:20:46 · 68 阅读 · 0 评论 -
java语言的特性
java语言的特性 简单性 高性能 编译性 解释性 分布式处理 健壮性 安全性 面向对象 开源 跨平台什么是跨平台性?通过Java语言编写的应用程序在不同的系统平台上都可以运行,那原理是什么?1.我们所写的JAVA程序是".java"为后缀的源文件,这些文件需要进行编译环节,变为以".class"为后缀的字节码文件,交由JVM(JAVA虚拟机)来运行.2.我们所写的JAVA程序是".java"为后缀的源文件,这些文件需要进行编译环节,变为以".class"为后缀的字节码文件,交由JVM(原创 2021-05-10 20:18:37 · 107 阅读 · 0 评论 -
面向对象概念
面向对象 类 对象 封装的概念什么是面向过程,什么是面向对象两者都是一种编程思想1.面向过程:意思是我们要做任何事,都需要亲力亲为,强调的是过程2.面向对象:相对于面向过程,我们可以由原来问题的执行者变为指挥者,进而把生活中很多复杂的问题变得简单化。面向对象的编程思想简称:OOP(Object Oriented Programming)面向对象的三大特征封装: 把相关的数据封装成一个“类”组件 (用private修饰后的成员变量或者成员方法)继承: 是子类自动共享父类属性和方法,原创 2021-05-10 20:18:03 · 442 阅读 · 2 评论 -
一维数组与二维数组
一维数组与二维数组 概念1.数组Array,标志是[ ] ,用于储存多个相同类型数据的集合想要获取数组中的元素值,可以通过脚标(下标)来获取数组下标是从0开始的,下标的最大值是数组的长度减12.数组创建出来在没有赋值的情况下默认为0创建数组的三种方式 //动态初始化 int[] a = new int[5]; //静态初始化 int[] b = new int[]{1,2,3,4,5}; int[] c = {1,2,3,4,5};创建数组过程分析在内存中开辟连续原创 2021-05-10 20:07:56 · 147 阅读 · 0 评论 -
Java分支结构
Java分支结构 概述顺序结构的程序虽然能解决计算、输出等问题但不能做判断再选择。对于要先做判断再选择的问题就要使用分支结构1.分支结构 if (true) { } else if (true) { System.out.println("判断为true时运行"); } else { System.out.println("以上都无法匹配到时运行"); }2.switch结构 //支持的类型 baty short int char String enum原创 2021-05-10 18:42:55 · 88 阅读 · 0 评论