
JAVA基础
星辰 Stars
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
JAVA 中的反射机制
JAVA 中的反射机制标签(空格分隔): JAVA 后端一、什么是反射?反射 (Reflection) 是 Java 的特征之一,它允许运行中的 Java 程序获取自身的信息,并且可以操作类或对象的内部属性。简而言之,通过反射,我们可以在运行时获得程序或程序集中每一个类型的成员和成员的信息。程序中一般的对象的类型都是在编译期就确定下来的,而 Java 反射机制可以动态地创建对象并调用其属性,这样的对象的类型在编译期是未知的。所以我们可以通过反射机制直接创建对象,即使这个对象的类型在编译期是未知的。原创 2020-07-08 11:29:23 · 145 阅读 · 0 评论 -
sleep() 、join()、yield()有什么区别
sleep() sleep() 方法需要指定等待的时间,它可以让当前正在执行的线程在指定的时间内暂停执行,进入阻塞状态,该方法既可以让其他同优先级或者高优先级的线程得到执行的机会,也可以让低优先级的线程得到执行机会。但是 sleep() 方法不会释放“锁标志”,也就是说如果有 synchronized 同步块,其他线程仍然不能访问共享数据。wait() wait() 方法需要和 ...转载 2018-10-29 08:41:25 · 502 阅读 · 0 评论 -
创建线程的方式及实现
继承 Thread 类创建线程类定义 Thread 类的子类,并重写该类的 run 方法,该 run 方法的方法体就代表了线程要完成的任务。因此把 run() 方法称为执行体。创建 Thread 子类的实例,即创建了线程对象。调用线程对象的 start() 方法来启动该线程。通过 Runnable 接口创建线程类定义 Runnable 接口的实现类,并重写该...原创 2018-10-29 08:41:35 · 190 阅读 · 0 评论 -
equals 与 == 的区别
== 与 equals 的主要区别是: == 常用于比较原生类型,而 equals() 方法用于检查对象的相等性。另一个不同的点是:如果 == 和 equals() 用于比较对象,当两个引用地址相同, == 返回 true。而 equals() 可以返回 true 或者 false 主要取决于重写实现。最常见的一个例子,字符串的比较,不同情况 == 和 eq...原创 2018-10-29 08:41:45 · 159 阅读 · 0 评论 -
MVC 设计思想
MVC 是三个单词的首字母缩写,它们是 Model(模型)、View(视图)和 Controller(控制)。这个模式认为,程序不论简单或复杂,从结构上看,都可以分成三层:最上面的一层,是直接面向最终用户的”视图层”(View)。它是提供给用户的操作界面,是程序的外壳。最底下的一层,是核心的”数据层”(Model),也就是程序需要操作的数据或信息。中间的一层,就是”控制层”(Contro...原创 2018-10-29 08:41:55 · 222 阅读 · 0 评论 -
JDBC 流程
向 DriverManager 类注册驱动数据库驱动程序调用 DriverManager.getConnection 方法, 通过 JDBC URL,用户名,密码取得数据库连接的 Connection 对象。获取 Connection 后, 便可以通过 createStatement 创建 Statement 用以执行 SQL 语句。有时候会得到查询结果,比如 select,得到查询结果,...原创 2018-10-29 08:42:03 · 124 阅读 · 0 评论 -
session 分布式处理
Session 复制在支持 Session 复制的 Web 服务器上,通过修改 Web 服务器的配置,可以实现将 Session 同步到其它 Web 服务器上,达到每个 Web 服务器上都保存一致的 Session。优点:代码上不需要做支持和修改。缺点:需要依赖支持的 Web 服务器,一旦更换成不支持的 Web 服务器就不能使用了,在数据量很大的情况下不仅占用网络资源,而且会导致延迟。适...原创 2018-10-29 08:42:11 · 225 阅读 · 0 评论 -
session 与 cookie 区别
cookie 数据存放在客户的浏览器上,session 数据放在服务器上。cookie 不是很安全,别人可以分析存放在本地的 cookie 并进行 cookie 欺骗,考虑到安全应当使用 session。session 会在一定时间内保存在服务器上。当访问增多,会比较占用你服务器的性能,考虑到减轻服务器性能方面,应当使用 cookie。单个 cookie 保存的数据不能超过 4K,很多浏览...转载 2018-10-26 10:53:03 · 115 阅读 · 0 评论 -
HTTP 请求的 GET 与 POST 方式的区别
根据 HTTP 规范,GET 用于信息获取,而且应该是安全的和幂等的。根据 HTTP 规范,POST 表示可能修改变服务器上的资源的请求。首先是 “GET 方式提交的数据最多只能是 1024 字节”,因为 GET 是通过 URL 提交数据,那么 GET 可提交的数据量就跟 URL 的长度有直接关系了。而实际上,URL 不存在参数上限的问题,HTTP 协议规范没有对 URL 长度进行限制。这...转载 2018-10-26 10:44:54 · 192 阅读 · 1 评论 -
说说自定义注解的场景及实现
登陆、权限拦截、日志处理,以及各种 Java 框架,如 Spring,Hibernate,JUnit 提到注解就不能不说反射,Java 自定义注解是通过运行时靠反射获取注解。实际开发中,例如我们要获取某个方法的调用日志,可以通过 AOP(动态代理机制)给方法添加切面,通过反射来获取方法包含的注解,如果包含日志注解,就进行日志记录。反射的实现在 Java 应用层面上讲,是通过对 Class 对象的操...原创 2018-10-26 10:42:51 · 4000 阅读 · 0 评论 -
说说反射的用途及实现
反射的用途Java 反射机制是一个非常强大的功能,在很多的项目比如 Spring,MyBatis 都都可以看到反射的身影。通过反射机制,我们可以在运行期间获取对象的类型信息。利用这一点我们可以实现工厂模式和代理模式等设计模式,同时也可以解决 Java 泛型擦除等令人苦恼的问题。反射的实现获取一个对象对应的反射类,在 Java 中有下列方法可以获取一个对象的反射类通过 getClass()...转载 2018-10-26 10:41:11 · 1182 阅读 · 0 评论 -
Java 基础
面向对象的特征final, finally, finalize 的区别int 和 Integer 有什么区别重载和重写的区别抽象类和接口有什么区别说说反射的用途及实现说说自定义注解的场景及实现HTTP 请求的 GET 与 POST 方式的区别session 与 cookie 区别session 分布式处理JDBC 流程MVC 设计思想equals 与 == 的区别...原创 2018-10-26 10:29:36 · 98 阅读 · 0 评论 -
抽象类和接口有什么区别
参数抽象类接口默认的方法实现它可以有默认的方法实现接口完全是抽象的。它根本不存在方法的实现实现子类使用 extends 关键字来继承抽象类。如果子类不是抽象类的话,它需要提供抽象类中所有声明的方法的实现。子类使用关键字 implements 来实现接口。它需要提供接口中所有声明的方法的实现构造器抽象类可以有构造器接口不能有构造器与正常 Java ...原创 2018-10-26 10:11:29 · 114 阅读 · 0 评论 -
重载和重写的区别
重载 Overload表示同一个类中可以有多个名称相同的方法,但这些方法的参数列表各不相同(即参数个数或类型不同)。重写 Override表示子类中的方法可以与父类中的某个方法的名称和参数完全相同,通过子类创建的实例对象调用这个方法时,将调用子类中的定义方法,这相当于把父类中定义的那个完全相同的方法给覆盖了,这也是面向对象编程的多态性的一种表现。子类覆盖父类的方法时,只能比父类抛出更少的异常...转载 2018-10-26 09:54:35 · 142 阅读 · 0 评论 -
int 和 Integer 有什么区别
int 是 Java 提供的 8 种原始数据类型之一。Java 为每个原始类型提供了封装类,Integer 是 Java 为 int 提供的封装类。int 的默认值为 0,而 Integer 的默认值为 null,是引用类型,即 Integer 可以区分出未赋值和值为 0 的区别,int 则无法表达出未赋值的情况,Java 中 int 和 Integer 关系是比较微妙的。关系如下:int...转载 2018-10-26 09:47:55 · 181 阅读 · 0 评论 -
final, finally, finalize 的区别
final用于声明属性,方法和类, 分别表示属性不可变, 方法不可覆盖, 类不可继承.finally是异常处理语句结构的一部分,表示总是执行.finalize是Object类的一个方法,在垃圾收集器执行的时候会调用被回收对象的此方法,可以覆盖此方法提供垃圾收集时的其他资源回收,例如关闭文件等. JVM不保证此方法总被调用....原创 2018-10-26 09:45:01 · 119 阅读 · 0 评论 -
面向对象的三个基本特征
面向对象的三个基本特征是:封装、继承、多态。封装封装最好理解了。封装是面向对象的特征之一,是对象和类概念的主要特性。封装,也就是把客观事物封装成抽象的类,并且类可以把自己的数据和方法只让可信的类或者对象操作,对不可信的进行信息隐藏。继承面向对象编程 (OOP) 语言的一个主要功能就是“继承”。继承是指这样一种能力:它可以使用现有类的所有功能,并在无需重新编写原来的类的情况下对这些功能进行...原创 2018-10-26 09:37:14 · 174 阅读 · 0 评论