![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java
文章平均质量分 70
Limingmingaa
这个作者很懒,什么都没留下…
展开
-
《Java基础知识》Java ArrayList源码分析4
指定位置添加元素:看看ArrayList 是如何删除的:. 尚学堂给同学们带来全新的Java300集课程啦!java零基础小白自学Java必备优质教程_手把手图解学习Java,让学习成为一种享受_哔哩哔哩_bilibilihttps://www.bilibili.com/video/BV1qL411u7eE?spm_id_from=333.337.search-card.all.click&vd_source=3117718bf474f48fd81d26049c0c97ac......原创 2022-06-30 17:48:33 · 160 阅读 · 0 评论 -
《Java基础知识》Java ArrayList源码分析3
接下来我们看看ArrayList的add方法的源码ok. 我们看看ArrayLIst是如何扩容的。 尚学堂给同学们带来全新的Java300集课程啦!java零基础小白自学Java必备优质教程_手把手图解学习Java,让学习成为一种享受_哔哩哔哩_bilibilihttps://www.bilibili.com/video/BV1qL411u7eE?spm_id_from=333.337.search-card.all.click&vd_source=3117718bf474f48fd81d26049c0c9原创 2022-06-30 17:46:56 · 177 阅读 · 0 评论 -
《Java基础知识》Java ArrayList源码分析2
第二种情况,给ArrayList 设置长度。 运行结果:无法得出结论谁插入快。我们来看看为什么ArrayList 插入也这么快呢? 先来看看ArrayList 的源码public class ArrayList<E> extends AbstractList<E> implements List<E>, RandomAccess, Cloneable, java.io.Serializable先分析ArrayList 的对象定义,发现继承Abstra原创 2022-06-30 17:44:45 · 139 阅读 · 0 评论 -
《Java基础知识》Java ArrayList源码分析
分析ArrayList 的源码为JDK8版本。我们先看看一个案例: 运行结果:(多次运行结果之后发现不一定谁插入快) 尚学堂给同学们带来全新的Java300集课程啦!java零基础小白自学Java必备优质教程_手把手图解学习Java,让学习成为一种享受_哔哩哔哩_bilibili...原创 2022-06-30 17:43:37 · 168 阅读 · 0 评论 -
《Java基础知识》Java transient关键字详解
在看ArrayList源码的时候遇到了关键字“transient”,可怜的我居然没有遇到过这个关键字,那没有办法只好去找资料了解一下它的功能。先看一个案例 运行效果:我们可以看到,反序列化出来的对象,passwd的值为null了。...原创 2022-06-30 17:42:03 · 107 阅读 · 0 评论 -
《Java基础知识》Java 内省(Introspector)详解2
下面我的目的是为了注入属性,所以我需要的set方法,故通过getWriteMethod() 方法获取了set 和 is 方法。然后通过 writeMethod.invoke(bean, 11); 方法将属性注入。我修改一下代码: 修改点为:bean 里面的setAge 方法改成了 setAgedddd. 运行结果:age 并没有注入,说明 propertyDescriptors[i].getName() 是获取了set方法去掉set部分的名字。当然一般我们现在不会这样写代码。 我想这也是Java 为什么有s原创 2022-06-30 17:40:39 · 131 阅读 · 0 评论 -
《Java基础知识》Java 内省(Introspector)详解
在Spring的自动注入的源码中,我遇到了内省(Introspector),Spring会先找到全部的set和is方法,然后执行这些set和is方法注入属性。如何找到这些set,is方法,JDK提供了内省(Introspector)API。先看一个案例:运行结果:从运行结果我们可以看到我们注入了属性。分析:代码中第一句:Introspector.getBeanInfo(Bean.class) 部分将你的对象变成一个BeanInfo。BeanInfo 中存在几个比较重要的方法。案例中使用了获取属性原创 2022-06-30 17:38:51 · 259 阅读 · 0 评论 -
《Java基础知识》Java 浅拷贝与深拷贝2
在上面代码的基础上,我们修改一下拷贝的逻辑,只需要修改Dog 类和 DogSchool 类。DogSchool 加上支持拷贝的接口,并且实现接口public class DogSchool implements Cloneable{ public String address; public String getAddress() { return address; } public void setAddress(String address) {原创 2022-06-30 17:35:37 · 119 阅读 · 0 评论 -
《Java基础知识》Java 浅拷贝与深拷贝1
在学习ArrayList的时候,发现ArrayList继承了Cloneable接口,于是就想着需要了解一下该接口是什么作用。我们先写一段代码,来看看什么是浅拷贝运行结果:从结果看,我们的年龄age拷贝之后对原对象赋值没有影响到复制出来的对象,但是引用对象里面的属性值被修改之后却影响了复制出来的对象。结论:在浅拷贝下,基本类型是独立的,拷贝前后互不干扰;引用类型是不独立的,拷贝前后互干扰;String类型也是独立的,拷贝前后互不干扰。浅拷贝是拷贝了栈里面的信息。这边对String为什么在浅拷贝下,也能不受影响原创 2022-06-30 17:33:37 · 114 阅读 · 0 评论 -
《Java基础知识》Java锁详解(volatile,synchronized等)
volatile:让变量每次在使用的时候,都从主存中取。volatile具有synchronized关键字的“可见性”,但是没有synchronized关键字的“并发正确性”,也就是说不保证线程执行的有序性。也就是说,volatile变量对于每次使用,线程都能得到当前volatile变量的最新值。但是volatile变量并不保证并发的正确性。1. volatile的可见性:案例:运行结果:status 状态已经打印,但是线程还在继续执行中。原因是:每一个线程都会创建自己的变量副本存在寄存器中。主线程将原创 2022-06-20 18:03:25 · 202 阅读 · 1 评论 -
《Java基础知识》Java注解“@“详解
Java注解含义:Java注解,顾名思义,注解,就是对某一事物进行添加注释说明,会存放一些信息,这些信息可能对以后某个时段来说是很有用处的。Java注解又叫java标注,java提供了一套机制,使得我们可以对方法、类、参数、包、域以及变量等添加标准(即附上某些信息)。且在以后某个时段通过反射将标注的信息提取出来以供使用。样例(实现一个自己的注解):运行结果:根据这个案例:1. 注解实现需要关键字:@interface;2. 在注解上我们还使用了注解 @Target,@Retention。这些被称为原创 2022-06-20 18:00:41 · 4193 阅读 · 0 评论 -
《Java基础知识》Java动态代理(InvocationHandler)详解
1. 什么是动态代理对象的执行方法,交给代理来负责。比如user.get() 方法,是User对象亲自去执行。而使用代理则是由proxy去执行get方法。举例:投资商找明星拍广告,投资商是通过经纪人联系的,经纪人可以帮明星接这个广告,也可以拒绝。做不做,怎么做都叫给经纪人和投资商谈。2. 实际场景应用2.1 校验用户权限,每一个菜单请求,都要判断一下请求的用户是否有该菜单权限。菜单多了,代码冗余,且容易遗漏。通过动态代理就可以实现为:每一个用户,每一个菜单的请求,都经过代理(proxy),由他判断是否有权限原创 2022-06-20 17:58:43 · 2589 阅读 · 0 评论 -
《Java基础知识》Java序列化与反序列化详解
序列化的作用:为了不同jvm之间共享实例对象的一种解决方案.由java提供此机制。序列化应用场景:1. 分布式传递对象。2. 网络传递对象。3. tomcat关闭以后会把session对象序列化到SESSIONS.ser文件中,等下次启动的时候就把这些session再加载到内存中。运行结果:序列化相关注意事项: a)序列化时,只对对象的状态进行保存,而不管对象的方法; b)当一个父类实现序列化,子类自动实现序列化,不需要显式实现Serializable接口; c)当一个对象的实例变量引用其原创 2022-06-17 18:11:59 · 283 阅读 · 0 评论 -
《Java基础知识》Java 反射详解
定义JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意方法和属性;这种动态获取信息以及动态调用对象方法的功能称为java语言的反射机制。用途在日常的第三方应用开发过程中,经常会遇到某个类的某个成员变量、方法或是属性是私有的或是只对系统应用开放,这时候就可以利用Java的反射机制通过反射来获取所需的私有成员或是方法。当然,也不是所有的都适合反射,之前就遇到一个案例,通过反射得到的结果与预期不符。阅读源码发现,经过层层调用后在最终返回结果的地方原创 2022-06-17 18:09:53 · 181 阅读 · 0 评论 -
《Java基础知识》Java Lambda表达式
接触Lambda表达式的时候,第一感觉就是,这个是啥?我居然看不懂,于是开始寻找资料,必须弄懂它。先来看一个案例:运行结果:非Lambda方式:运行结果:对比一下这两种方式:明显感觉使用Lambda表达式的更加简洁,由Java8引入,让我们一起来看看Lambda表达式的优点和不足。1. Lambda表达式 语法:() -> {}; 通过上述案例我们看出,这个语法,就是替代了一个实现类和实现类中方法。() 里面y为入参,{} 为方法体,类名被隐藏,方法名被隐藏。2. Lambda表达原创 2022-06-17 18:06:10 · 228 阅读 · 0 评论 -
《Java基础知识》Java 泛型详解
JDK 1.5 之后,Java 通过泛型解决了容器类型安全这一问题,而几乎所有人接触泛型也是通过Java的容器。那么泛型究竟是什么?泛型的本质是参数化类型;也就是说,泛型就是将所操作的数据类型作为参数的一种语法。先对比一下有泛型和无泛型的写法。无泛型运行结果:使用泛型分析:第一种:通过Object 类接收,最后使用的时候需要强制转换后才能正常使用,并且强转是否正确,只有在运行时才能知道是否正确。第二种:通过 T 接收,在使用的使用 中指定本次使用具体类,可以很好的做到要用什么传..原创 2022-06-15 18:18:55 · 129 阅读 · 0 评论 -
《Java基础知识》Java正则表达式
一个字符串其实就是一个简单的正则表达式,例如 Hello World 正则表达式匹配 "Hello World" 字符串。.(点号)也是一个正则表达式,它匹配任何一个字符如:"a" 或 "1"。下面列出了一些正则表达式的实例及描述:Java 正则表达式和 Perl 的是最为相似的。java.util.regex 包主要包括以下三个类:还有一个特殊的组(group(0)),它总是代表整个表达式。该组不包括在 groupCount 的返回值中。下面的例子说明如何从一个给定的字符串中找到数字串:可以通过调用 ma原创 2022-06-15 18:16:11 · 140 阅读 · 0 评论 -
《Java基础知识》Java IO流详解
Java IO概念1. 用于设备之间的数据传输。2. Java 将操作数据流的功能封装到了IO包中。3. 数据流流向分:输入流和输出流,操作对象为文件。4. 流按照操作数据分:字节流(通用)和字符流。5. 将计算机语言:二进制数据转换成文件显示到电脑上。IO包:继承关系图:字符流:Reader :读取字符流,方法见API。Writer :写入字符流,方法见API。案例(Writer ): 运行结果:案例(Reader):文件数据: 运行结果:实现一个完整的文件复制。 运行结果:优化文件复制原创 2022-06-15 18:11:43 · 186 阅读 · 0 评论 -
《Java基础知识》Java集合(Map)
Java集合主要由2大体系构成,分别是Collection体系和Map体系,其中Collection和Map分别是2大体系中的顶层接口。今天主要讲:Map主要有二个子接口,分别为HashMap、TreeMap。继承关系图:Map的整体特点:1. 键值对存放2. 遍历需要使用迭代器:Iterator常用Map HashMap 运行结果:Map 的四种遍历方式 运行结果:HashMap 底层是哈希表数据结构,线程是不同步的,可以存入null键,null值。要保证键的唯一性,...原创 2022-06-13 16:47:28 · 104 阅读 · 0 评论 -
《Java基础知识》Java集合(Collection)
作为一个Developer,Java集合类是我们在工作中运用最多的、最频繁的类。相比于数组(Array)来说,集合类的长度可变,更加适合于现代开发需求;Java集合就像一个容器,可以存储任何类型的数据,也可以结合泛型来存储具体的类型对象。在程序运行时,Java集合可以动态的进行扩展,随着元素的增加而扩大。在Java中,集合类通常存在于java.util包中。Java集合主要由2大体系构成,分别是Collection体系和Map体系,其中Collection和Map分别是2大体系中的顶层接口。今天主要讲:Co原创 2022-06-13 16:44:52 · 127 阅读 · 0 评论 -
《Java基础知识》Java线程的概念
进程和线程算是操作系统内两个很基本、很重要的概念了,进程是操作系统中进行保护和资源分配的基本单位,操作系统分配资源以进程为基本单位。而线程是进程的组成部分,它代表了一条顺序的执行流。系统中的进程线程模型是这样的:进程从操作系统获得基本的内存空间,所有的线程共享着进程的内存地址空间。当然,每个线程也会拥有自己私有的内存地址范围,其他线程不能访问。 由于所有的线程共享进程的内存地址空间,所以线程间的通信就容易的多,通过共享进程级全局变量即可实现。同时,在没有引入多线程概念之前,所谓的『并发』是发生在进程之间的,原创 2022-06-13 16:41:25 · 147 阅读 · 0 评论 -
《Java基础知识》Java断言
断言:也就是所谓的assertion,是jdk1.4后加入的新功能。它主要使用在代码开发和测试时期,用于对某些关键数据的判断,如果这个关键数据不是你程序所预期的数据,程序就提出警告或退出。当软件正式发布后,可以取消断言部分的代码。java中使用assert作为断言的一个关键字,这就可以看出java对断言还是很重视的,因为如果不是很重要的话,直接开发个类就可以了,没必要新定义一个关键字。语法1:assert expression; //expression代表一个布尔类型的表达式原创 2022-06-09 18:26:29 · 4391 阅读 · 0 评论 -
《Java基础知识》Java异常处理详解
阅读目录回到目录前言:Java 中的异常处理是处理程序运行错误时的强大机制之一,它可以保证应用程序的正常流程。首先我们将了解java异常、异常的类型以及受查和非受查异常之间的区别。回到目录字面意义:异常是一种不正常的情况。在 java 中,异常是扰乱程序正常流程的事件,它是在程序运行时抛出的对象。回到目录异常处理一种在运行时解决程序错误的机制,例如 ClassNotFound、IO、SQL、Remote 等。回到目录异常通常会干扰程序的正常流程,而异常处理的核心优势是维护程序的正常流程。现在让我们假设一下:原创 2022-06-09 18:23:59 · 378 阅读 · 0 评论 -
《Java基础知识》Java接口和抽象类的区别
抽象类必须用 修饰,子类必须实现抽象类中的抽象方法,如果有未实现的,那么子类也必须用 abstract 修饰。抽象类默认的权限修饰符为 ,可以定义为 public 或 procted,如果定义为 private,那么子类则无法继承。抽象类不能创建对象接口中的变量隐式的使用 修饰,并且需要给出初始值。方法隐式的使用 修饰(并且只能是 public ,如果是 private,procted,那么就编译报错)。接口中的方法默认不能有具体的实现(JDK1.8开始可以有默认的实现)尚学堂给同学们带来全新的Jav原创 2022-06-09 18:18:18 · 114 阅读 · 0 评论 -
《Java基础知识》Java静态内部类、匿名内部类、成员式内部类和局部内部类
内部类可以是静态(static)的,可以使用 public、protected 和 private 访问控制符,而外部类只能使用 public,或者默认。成员式内部类在外部类内部直接定义(不在方法内部或代码块内部)的类就是成员式内部类,它可以直接使用外部类的所有变量和方法,即使是 private 的。外部类要想访问内部类的成员变量和方法,则需要通过内部类的对象来获取。成员式内部类如同外部类的一个普通成员。成员式内部类可以使用各种修饰符,包括 public、protected、private、sta原创 2022-06-09 18:16:39 · 115 阅读 · 0 评论 -
《Java基础知识》Java内部类及其实例化
在 Java 中,允许在一个类(或方法、语句块)的内部定义另一个类,称为内部类(Inner Class),有时也称为嵌套类(Nested Class)。内部类和外层封装它的类之间存在逻辑上的所属关系,一般只用在定义它的类或语句块之内,实现一些没有通用意义的功能逻辑,在外部引用它时必须给出完整的名称。使用内部类的主要原因有:内部类可以访问外部类中的数据,包括私有的数据。内部类可以对同一个包中的其他类隐藏起来。当想要定义一个回调函数且不想编写大量代码时,使用匿名(anonymous)内部类比较便捷。减少原创 2022-06-09 18:14:56 · 287 阅读 · 0 评论 -
《Java基础知识》Java抽象类,接口的概念和使用
1.抽象类在自上而下的继承层次结构中,位于上层的类更具有通用性,甚至可能更加抽象。从某种角度看,祖先类更加通用,它只包含一些最基本的成员,人们只将它作为派生其他类的基类,而不会用来创建对象。甚至,你可以只给出方法的定义而不实现,由子类根据具体需求来具体实现。这种只给出方法定义而不具体实现的方法被称为抽象方法,抽象方法是没有方法体的,在代码的表达上就是没有“{}”。包含一个或多个抽象方法的类也必须被声明为抽象类。使用 abstract 修饰符来表示抽象方法和抽象类。抽象类除了包含抽象方法外,还可以包含具体的变原创 2022-06-08 18:26:05 · 262 阅读 · 0 评论 -
《Java基础知识》Java类与类之间的关系
类与类之间最常见的关系主要有三种:依赖(uses-a)、聚合(has-a)和继承(is-a)。下面以在线书店订单系统为例,来详细的讲述这三种关系的概念。在线书店订单系统的主要功能是:注册用户可以登录到网上书店选购图书,在线填写订单,并支付购书款。书店确认已经收到购书款时,按用户留下的地址邮寄图书。可以在这个系统中建立几个类,有图书(book)、账户(account)、订单(order)、地址(address)等,如下图所示:依赖(uses-a)依赖关系是类中最常见的关系,例如订单类(order)需要访问用户原创 2022-06-07 17:22:00 · 167 阅读 · 0 评论 -
《Java基础知识》Java final关键字:阻止继承和多态
在 Java 中,声明类、变量和方法时,可使用关键字 final 来修饰。final 所修饰的数据具有“终态”的特征,表示“最终的”意思。具体规定如下:final 一般用于修饰那些通用性的功能、实现方式或取值不能随意被改变的数据,以避免被误用,例如实现数学三角方法、幂运算等功能的方法,以及数学常量π=3.141593、e=2.71828 等。事实上,为确保终态性,提供了上述方法和常量的 java.lang.Math 类也已被定义为final 的。需要注意的是,如果将引用类型(任何类的类型)的变量标原创 2022-06-07 17:20:02 · 347 阅读 · 0 评论 -
《Java基础知识》Java static关键字以及Java静态变量和静态方法
static 修饰符能够与变量、方法一起使用,表示是“静态”的。静态变量和静态方法能够通过类名来访问,不需要创建一个类的对象来访问该类的静态成员,所以static修饰的成员又称作类变量和类方法。静态变量与实例变量不同,实例变量总是通过对象来访问,因为它们的值在对象和对象之间有所不同。请看下面的例子:运行结果:static 的内存分配静态变量属于类,不属于任何独立的对象,所以无需创建类的实例就可以访问静态变量。之所以会产生这样的结果,是因为编译器只为整个类创建了一个静态变量的副本,也就是只分配一个内存原创 2022-06-07 17:17:57 · 155 阅读 · 0 评论 -
《Java基础知识》Java多态对象的类型转换
这里所说的对象类型转换,是指存在继承关系的对象,不是任意类型的对象。当对不存在继承关系的对象进行强制类型转换时,java 运行时将抛出 java.lang.ClassCastException 异常。在继承链中,我们将子类向父类转换称为“向上转型”,将父类向子类转换称为“向下转型”。很多时候,我们会将变量定义为父类的类型,却引用子类的对象,这个过程就是向上转型。程序运行时通过动态绑定来实现对子类方法的调用,也就是多态性。然而有些时候为了完成某些父类没有的功能,我们需要将向上转型后的子类对象再转成子类,调用子原创 2022-06-06 18:17:55 · 405 阅读 · 0 评论 -
《Java基础知识》Java instanceof 运算符
java多态性带来一个问题,就是如何判断一个变量所实际引用对象的类型。这里java帮我们引入了 instanceof 运算符。 instanceof运算符用来判断一个变量的所引用对象的实际类型,注意是它引用的对象类型,不是变了类型。请看下面的代码:运行结果:可以看出,如果变量引用的是当前类或它的子类的实例,instanceof 返回 true ,否则返回false。 尚学堂给同学们带来全新的Java300集课程啦!java零基础小白自学Java必备优质教程_手把手图解学习Java,让学习成为一种享受_原创 2022-06-02 16:53:44 · 137 阅读 · 0 评论 -
《Java基础知识》Java多态和动态绑定
在Java中,父类的变量可以引用父类的实例,也可以引用子类的实例。请读者先看一段代码:运行结果:上面的代码,定义了三个类,分别是 Animal、Cat 和 Dog,Cat 和 Dog 类都继承自 Animal 类。obj 变量的类型为 Animal,它既可以指向 Animal 类的实例,也可以指向 Cat 和 Dog 类的实例,这是正确的。也就是说,父类的变量可以引用父类的实例,也可以引用子类的实例。注意反过来是错误的,因为所有的猫都是动物,但不是所有的动物都是猫。可以看出,obj 既可以是人类,也可原创 2022-06-02 16:51:38 · 166 阅读 · 0 评论 -
《Java基础知识》Java super关键字
super可以理解为是指向自己超(父)类对象的一个指针,而这个超类指的是离自己最近的一个父类。super也有三种用法:1.普通的直接引用与this类似,super相当于是指向当前对象的父类,这样就可以用super.xxx来引用父类的成员。2.子类中的成员变量或方法与父类中的成员变量或方法同名运行结果: 可以看到,这里既调用了父类的方法,也调用了父类的变量。若不调用父类方法value(),只调用父类变量name的话,则父类name值为默认值null。3.引用构造函数super(参数):调用父类中的某一个原创 2022-06-01 18:22:15 · 100 阅读 · 0 评论 -
《Java基础知识》Java继承的概念和实现
继承时类和类之间的关系,是一个很简单很直观的概念,与显示生活中的继承(例如儿子继承了父亲财产)类似。继承可以理解为一个类从另一个类中获取方法和属性的过程。如果类B继承于类A,那么类B就拥有类A的属性和方法。继承使用extends关键字。例如我们定义了一个People:如果现在还需要定义两个类,一个是Teacher类,而这个类需要有基本的name,age,sex属性,还需要增加school,subject,seniority属性。怎么办呢?我们要重新定义一个类吗?完全没必要,可以先继承People类,然原创 2022-06-01 18:21:13 · 300 阅读 · 0 评论 -
《Java基础知识》Java包装类,拆箱和装箱
虽然 Java 语言是典型的面向对象编程语言,但其中的八种基本数据类型并不支持面向对象编程,基本类型的数据不具备“对象”的特性——不携带属性、没有方法可调用。 沿用它们只是为了迎合人类根深蒂固的习惯,并的确能简单、有效地进行常规数据处理。Java为每种基本数据类型分别设计了对应的类,称之为包装类(Wrapper Classes),也有教材称为外覆类或数据类型类。每个包装类的对象可以封装一个相应的基本类型的数据,并提供了其它一些有用的方法。包装类对象一经创建,其内容(所封装的基本类型数据值)不可改变。基本类型原创 2022-06-01 18:04:35 · 328 阅读 · 0 评论 -
《Java基础知识》Java方法重载和重写
《Java基础知识》Java方法重载和重写重写(Override)重写是子类对父类的允许访问的方法的实现过程进行重新编写, 返回值和形参都不能改变。即外壳不变,核心重写!重写的好处在于子类可以根据需要,定义特定于自己的行为。 也就是说子类能够根据需要实现父类的方法。重写方法不能抛出新的检查异常或者比被重写方法申明更加宽泛的异常。例如: 父类的一个方法申明了一个检查异常 IOException,但是在重写这个方法的时候不能抛出 Exception 异常,因为 Exception 是 IOExc原创 2022-05-31 16:16:19 · 172 阅读 · 0 评论 -
《Java基础知识》Java this关键字详解
《Java基础知识》Java this关键字详解this 关键字用来表示当前对象本身,或当前类的一个实例,通过this可以调用对象的所有方法和属性。例如:public class Demo { private int x = 10; private int y = 15; public void sum(){ //通过this获取成员变量,this可以省略。 int z = this.x + this.y; Sys原创 2022-05-31 16:14:39 · 150 阅读 · 0 评论 -
《Java基础知识》Java变量作用域
《Java基础知识》Java变量作用域 对于在作用域里定义的变量,作用域同时决定了它的“可见性”以及“存在时间”。在JAVA里,作用域是由花括号的位置决定的。JAVA用一对大括号作为语句块的范围,称为作用域,在作用域里定义的变量,只有在该作用域结束之前才可使用。在JAVA中,变量的作用域分为四个级别:类级、对象实例级、方法级、块级。* 类级变量又称全局级变量或静态变量,需要使用static关键字修饰。类级变量在类定义后就已经存在,占用内存空间,可以通过类名来访问,不需要实例化。...原创 2022-05-31 16:12:44 · 628 阅读 · 0 评论 -
《Java基础知识》Java类的基本运行顺序
《Java基础知识》Java类的基本运行顺序我们以下面的类来说明一个基本的 Java 类的运行顺序:public class Demo { private String name; private int age; public Demo(){ name = "微学院"; age = 3; } public static void main(String[] args){ Demo demo = n原创 2022-05-30 18:16:17 · 700 阅读 · 0 评论