JAVA基础
和尚不洗碗
不断努力学习,提供自己的能力。学习+思考+坚持=成功。
展开
-
JAVA基础:面向对象的优良特性
面向对象的优良特性是封装,继承,多态。封装的意义,在于明确标识出允许外部使用的所有成员函数和数据项,或者叫接口。有了封装,就可以明确区分内外,使得类实现者可以修改封装内的东西而不影响外部调用者;而外部调用者也可以知道自己不可以碰哪里。这就提供一个良好的合作基础——或者说,只要接口这个基础约定不变,则代码改变不足为虑。继承同时具有两种含义:其一是继承基类的方法,并做出自己的改变和/或扩展...转载 2019-03-06 21:49:32 · 209 阅读 · 0 评论 -
JAVA基础:MVC 设计思想
一、概念MVC是model、view、controller的简称。它是一中软件的设计思想,将应用的一个输入、处理、输出按照模型层,视图层,控制层进行分层设计。1)模型: 业务逻辑包含了业务数据的加工与处理以及相应的基础服务(为了保证业务逻辑能够正常进行的事务、安全、权限、日志等等的功能模块)2)视图:展现模型处理的结果;另外,还要提供相应的操作界面,方便用户使用。3)控制器:视图发...转载 2019-03-07 10:02:39 · 558 阅读 · 0 评论 -
JAVA基础:JDBC 流程
JDBC概述 使用JDBC也挺长时间了,最近因为想学习mybatis的源码,因此打算重新复习一下JDBC的使用。定义:JDBC(Java DataBase Connectivity,java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。JDBC提供了一种基准,据此可以构建更高级的工具和接口,使数据库开...转载 2019-03-07 10:02:26 · 192 阅读 · 0 评论 -
JAVA基础:Cookie和Session
会话(Session)跟踪是Web程序中常用的技术,用来跟踪用户的整个会话。常用的会话跟踪技术是Cookie与Session。Cookie通过在客户端记录信息确定用户身份,Session通过在服务器端记录信息确定用户身份。1.1 Cookie机制在程序中,会话跟踪是很重要的事情。理论上,一个用户的所有请求操作都应该属于同一个会话,而另一个用户的所有请求操作则应该属于另一个会话,二者不能混淆...转载 2019-03-07 10:02:11 · 278 阅读 · 0 评论 -
JAVA基础:http中get和post
1、get和post区别:从设计初衷考虑get是为了查询服务器资源(不改变服务器数据及状态,因此说它是安全和幂等的,但get请求参数一般是直接在url后面,浏览器地址栏中会被看到能保存书签及历史记录,这点讲可能不安全),post是向服务器提交资源(会改变服务器资源和状态,但向服务器提交的数据一般是放在请求体request body中不会直接在地址栏中看到这点说它相对安全——实际上抓包是能看到数...转载 2019-03-07 10:01:58 · 415 阅读 · 0 评论 -
JAVA基础:Java注解总结
注解是Java元数据,可以理解成代码的标签,正确使用能极大的简化代码的编写逻辑,在各种框架代码中使用也越来越多。一、注解的应用场景生成doc文档; 编译器类型格式检查; 运行时处理如注入依赖等二、自定义注解注意事项注解的类型是@interface,里面只有以“无形参的方法”的形式来声明的成员变量。其方法名定义了成员变量的名字,返回值类型定义了该成员变量的类型。在注解中定义属...转载 2019-03-06 22:13:23 · 231 阅读 · 0 评论 -
JAVA基础:Java反射
反射是Java最重要的特性。通过Java反射可以在运行时知道一个类的所有成员和方法,知道一个对象的类类型、成员和方法的所有信息,进而调用对象的方法或生成对象的代理或包装类。 Java是面向对象语言,除了静态变量或原始数据类型外都是完全面向对象的。每个类定义也都是Class的实例变量,它表示类的类定义,类的方法、成员变量、构造函数都可以抽象理解为对象,其中Method代表类成员方法对象的类类型,F...转载 2019-03-06 22:12:12 · 221 阅读 · 0 评论 -
JAVA基础:Java中的接口和抽象类
接口和抽象类是Java设计中最基本的概念,它们都不能实例化对象,都可以实现多态,也都能用来创建匿名内部类。但实际使用上还有很多的不同。两者的语法定义不同,对应的设计抽象关系也不同,接口主要是对行为的抽象,表示本质相似的关系,即like-a关系,而抽象类可以对数据和行为抽象,表示本质相同即has-a关系。 抽象类中的属性和方法可以通过各种访问修饰符修饰,但接口中的变量默认是 public st...转载 2019-03-06 22:10:53 · 186 阅读 · 0 评论 -
JAVA基础:重载和重写的区别
方法重载是指同一个类中的多个方法具有相同的名字,但这些方法具有不同的参数列表,即参数的数量或参数类型不能完全相同方法重写是存在子父类之间的,子类定义的方法与父类中的方法具有相同的方法名字,相同的参数表和相同的返回类型注:(1)子类中不能重写父类中的final方法(2)子类中必须重写父类中的abstract方法首先我们来讲讲:重载(O...转载 2019-03-06 22:09:49 · 204 阅读 · 0 评论 -
JAVA基础:int 和 Integer 有什么区别
如果面试官问Integer与int的区别:估计大多数人只会说道两点,Ingeter是int的包装类,int的初值为0,Ingeter的初值为null。但是如果面试官再问一下Integer i = 1;int ii = 1; i==ii为true还是为false?估计就有一部分人答不出来了,如果再问一下其他的,估计更多的人会头脑一片混乱。所以我对它们进行了总结,希望对大家有帮助。 首先看...转载 2019-03-06 22:06:33 · 345 阅读 · 0 评论 -
JAVA基础:final, finally, finalize 的区别
1. final 在java中,final可以用来修饰类,方法和变量(成员变量或局部变量)。下面将对其详细介绍。1.1 修饰类 当用final修饰类的时,表明该类不能被其他类所继承。当我们需要让一个类永远不被继承,此时就可以用final修饰,但要注意:final类中所有的成员方法都会隐式的定义为final方法。1.2 修饰方法使用final方法的原因主要有两个: ...转载 2019-03-06 22:02:30 · 205 阅读 · 0 评论 -
JAVA基础:面向对象的设计原则
面向对象的初衷是应对需求变化、简化设计,提升组件复用性,使系统更稳定、易扩展易维护,而不是让系统更复杂,只开发写一次代码,重复造乱子。开闭原则:对扩展开放,对修改关闭,是面向对象的目标原则,是最终想达到的状态。因为对修改关闭,所以原有功能稳定不会被改出新问题,因为扩展开放,所以可以新增功能应对需求变更。 里氏替换原则:子类替换父类,凡是父类或接口出现的地方都可以用它的子类或实现楼代替,...转载 2019-03-06 21:59:39 · 190 阅读 · 0 评论 -
JAVA基础:JAVA面向对象设计中类关系
类之间关系分为继承、泛化、依赖、关联、聚合、聚合关系几种。继承是is a关系,泛化(类实现接口)表示like a关系。Generalization(泛化)表现为继承或实现关系(is a)。具体形式为类与类之间的继承关系,接口与接口之间的继承关系,类对接口的实现关系。继承、实现关系是比较明确的,另外几种依赖、关联关系要结合语义(具体上下文环境)来理解。依赖(Dependency)关系...转载 2019-03-06 21:58:16 · 610 阅读 · 0 评论 -
JAVA基础:equals 与 == 的区别
区别:“==” 比较的是两个引用在内存中指向的是不是同一对象(即同一内存空间),也就是说在内存空间中的存储位置是否一致。如果两个对象的引用相同时(指向同一对象时),“==”操作符返回true,否则返回flase。注:如果有对内存分配及变量存储位置(堆、栈、方法区常量池、方法区静态区)感兴趣的可以去看看这篇博客,里面写的很详细。对我还在学基础的人来说帮助很大,理解了很多内容,还有待消化。...转载 2019-03-07 10:02:53 · 188 阅读 · 0 评论