![](https://img-blog.csdnimg.cn/20201014180756913.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Java基础
文章平均质量分 68
我要霸气的名字
这个作者很懒,什么都没留下…
展开
-
注解
* 注解 * 概述:从Java核心内容到JavaEE,一路都可以使用注解方式完成. * 作用:主要就是用来替代xml的配置文件. * 存在的位置:在对应的Java类中. * 使用的范围:用于修饰包,类,构造器,方法,成员变量,参数和局部变量的声明. * 存储形式:key\value形式. * 注意:不影响原本的代码执行. * 注解与原创 2016-08-25 19:45:59 · 172 阅读 · 0 评论 -
方法的重写
目前的问题:父类的功能无法满足子类的需求。方法重写的前提: 必须要存在继承的关系。方法的重写: 子父类出了同名的函数,这个我们就称作为方法的重写。什么是时候要使用方法的重写:父类的功能无法满足子类的需求时。方法重写要注意的事项:1.方法重写时, 方法名与形参列表必须一致。2.方法重写时,子类的权限修饰符必须要大于或者等于父类的权限修饰符。3.方法重写时,原创 2016-11-01 14:28:14 · 388 阅读 · 0 评论 -
instanceof关键字
instanceof 关键字instanceof关键字的作用:判断一个对象是否属于指定的类别。instanceof关键字的使用前提:判断的对象与指定的类别必须要存在继承或者实现的关系。instanceof关键字的使用格式: 对象 instanceof 类别instanceof关键字的作用: 目前没用。但是学习 到了多态之后就非常有用。一般我们做强制类型原创 2016-11-01 19:00:02 · 184 阅读 · 0 评论 -
final关键字
final(最终、修饰符) final关键字的用法:1. final关键字修饰一个基本类型的变量时,该变量不能重新赋值,第一次的值为最终的。2. fianl关键字修饰一个引用类型变量时,该变量不能重新指向新的对象。3. final关键字修饰一个函数的时候,该函数不能被重写。4. final关键字修饰一个类的时候,该类不能被继承。常量 的修饰符一般为: public原创 2016-11-02 07:26:12 · 192 阅读 · 0 评论 -
抽象类
抽象类:目前存在的问题: 1. 动物类的run方法描述的不正确。 2. 没有强制要子类一定要重写run方法。抽象类的应用场景:我们在描述一类事物的时候,发现该种事物确实存在着某种行为,但是这种行为目前是不具体的,那么我们可以抽取这种行为 的声明,但是不去实现该种行为,这时候这种行为我们称作为抽象的行为,我们就需要使用抽象类。抽象类原创 2016-11-02 07:55:44 · 230 阅读 · 0 评论 -
值传递
值传递: 调用一个方法的时候,传递给方法的参数 ,实际上传递变量所存储的值。import java.util.*;class Person{ int x =10;}class Demo5 { public static void main(String[] args) { /* int a = 3; int b = 5; changeValue(a,b);原创 2016-11-02 11:21:52 · 230 阅读 · 0 评论 -
接口
java是单继承:一个类最多只能有一个直接的父类。但是有多个间接的父类。class Ye{ String name;}class Fu extends Ye{}//class Zi extends Fu{}class Demo6 { public static void main(String[] args) { // System.out.p原创 2016-11-02 16:19:55 · 301 阅读 · 0 评论 -
多态
面向对象的三大特征:1. 封装2. 继承3. 多态java数据类型图: ┏数值型━┳━整数型:byte short int long ┏基本数据类型━━┫ ┗━浮点型:float double ┃原创 2016-11-02 20:17:15 · 328 阅读 · 0 评论 -
接口与接口、接口与类之间的关系
类与接口之间关系: 实现关系。类与接口要注意的事项:1. 非抽象类实现一个接口时,必须要把接口中所有方法全部实现。2. 抽象类实现一个接口时,可以实现也可以不实现接口中的 方法。3. 一个类可以实现多个接口 。疑问: java为什么不支持多继承,而支持了多实现呢?class A{public void print(){System.out.print原创 2016-11-02 17:58:20 · 1252 阅读 · 0 评论 -
位运算符
/*位运算符可能会出现的题目:1. 交换两个变量的值,不准出现第三方变量。2. 取出一个二进制数据的指定位数。要求读取该二进制数据的低4位00000000-00000000-00010100-01001101& 00000000-00000000-00000000-00001111-----------------------------------------原创 2016-10-26 07:41:37 · 196 阅读 · 0 评论 -
比较运算符&逻辑运算符&位运算符
/*比较运算符: 比较运算符的结果都是返回一个布尔值的。== (判断是否等于)==用于比较两个基本数据类型数据的时候,比较的是两个变量所存储的值是否一致.==用于比较两个引用类型变量的数据时候,比较的是两个 引用类型变量所记录的内存地址是否一致. != (不等于)> (大于)>= (大于等于)*/class Demo7 {原创 2016-10-26 07:52:54 · 826 阅读 · 0 评论 -
移位运算符&三元运算符
/*移位运算符:规律:一个操作数进行左移运算的时候,结果就是等于操作数乘以2的n次方,n就是左移 的位数.333>>(右移)规律:一个操作数在做右移运算的时候,实际上就是等于该操作数除以2的n次方,n就是右移的位数。3>>1 = 3 / 2(1) = 13>>2 = 3 / 2(2) = 0 。。>>>(无符号右移) :原创 2016-10-26 07:56:29 · 440 阅读 · 0 评论 -
super关键字
super关键字:super关键字代表了父类空间的引用。super关键字的 作用:1. 子父类存在着同名的成员时,在子类中默认是访问子类的成员,可以通过super关键字指定访问父类的成员。super.name; super.print();2. 创建子类对象时,默认会先调用父类无参的构造方法,可以通过super关键字指定调用父类的构造方法(带参、无参)。 super();sup原创 2016-10-31 20:49:13 · 521 阅读 · 0 评论 -
继承
在现实生活中事物与事物之间是存在关系.1.球员---->球队 整体与部分关系 has a 关系 一个类维护了另一个类的对象//球员类class Player{ int num; //编码 String name; public Player(int num , String name){ this.num = num; this.name =原创 2016-10-31 20:17:49 · 236 阅读 · 0 评论 -
动态代理
按照代理的创建时间不同,可以分为两种:静态代理:手动创建,再对其编译。在程序运行前,代理类的.class文件就已经存在。动态代理:在程序运行时,通过反射机制动态创建而成。动态代理 * 概述: 通过反射动态生成代理对象,通过代理对象调用委托类的方法. * 作用:代理类会对委托类的方法进行过滤 实现过程: * 实现动态代理:原创 2016-08-25 19:48:19 · 237 阅读 · 0 评论 -
封装
面向对象三大特征:1. 封装2. 继承3 多态。需求: 使用java类描述百合网的会员。问题: 性别有问题??根本原因: 由于其他人可以直接操作sex属性。可以对sex属性进行了直接的赋值。封装:权限修饰符:权限修饰符就是控制变量可见范围的。public : 公共的。 public修饰的成员变量或者方原创 2016-10-30 08:52:44 · 208 阅读 · 0 评论 -
匿名对象
匿名对象:没有引用类型变量指向的对象称作为匿名对象。需求: 使用 java类描述一个学生类。匿名对象要注意的事项:1. 我们一般不会给匿名对象赋予属性值,因为永远无法获取到。2. 两个匿名对象永远都不可能是同一个对象。匿名对象好处:简化书写。匿名对象的应用场景:1. 如果一个对象需要调用一个方法一次的时候,而调用完这个方法之后,该对象就不原创 2016-10-30 07:36:28 · 222 阅读 · 0 评论 -
局部变量与成员变量的区别
成员变量与局部变量的区别:定义的位置上区别: 1. 成员变量是定义在方法之外,类之内的。2. 局部变量是定义在方法之内。作用上的区别:1. 成员变量的作用是用于描述一类事物的公共 属性的。2. 局部变量的作用就是提供一个变量给方法内部使用而已。生命周期区别:1. 随着对象 的创建而存在,随着对象的消失而消失。2. 局部变量在调用了对应的方法时执行原创 2016-10-29 08:10:57 · 284 阅读 · 0 评论 -
面向对象的基本概述
/*java面向对象的语言对象:真实存在唯一的事物。类: 实际就是对某种类型事物的共性属性与行为的抽取。 抽象的概念.... 车我们从小的时候就不断的接触很多的对象,我们的大脑就会把这些具备相同属性与行为的事物进行分类。在现实生活中就存在对象与类这两种事物。计算机是服务于人类,为了让计算机更加接近我们的生活,这时候就出现了面向对象的原创 2016-10-29 08:05:22 · 217 阅读 · 0 评论 -
构造函数
java是 面向对象的语言: "万物皆对象": 任何事物都可以使用类进行描述。需求: 使用java类描述 一个婴儿.在现实生活中有两种婴儿, 一种婴儿一出生就具备了名字(白户),还有一种婴儿就是 出生之后才有名字 的(黑户)。构造函数:构造函数的作用: 给对应的对象进行初始化。构造函数的定义的格式:修饰符原创 2016-10-30 10:28:41 · 206 阅读 · 0 评论 -
构造代码块
构造代码块:构造代码块的作用:给对象进行统一的初始化。 只要创建了对象 构造代码块的代码就会执行 无论参数有无构造函数的作用: 给对应的对象进行初始化。构造代码块的格式:{构造代码块}注意: 构造代码块的大括号必须位于成员 位置上。代码块的类别:1. 构造代码块。2. 局部代码块. 大括号位于方法之内。 作用:缩短局原创 2016-10-30 12:58:25 · 321 阅读 · 0 评论 -
this关键字
需求: 使用java类描述一个动物。问题:存在同名的成员变量与局部变量时,在方法的内部访问的是局部变量(java 采取的是就近原则的机制访问的。)运行结果:老鼠在吃this关键字:this关键字代表了所属函数的调用者对象。(所属函数的所属类对象)this关键字作用:1. 如果存在同名成员变量与局部变量时,在方法内部原创 2016-10-30 15:46:23 · 221 阅读 · 0 评论 -
main方法
main函数的详解: public : 公共的。 权限是最大,在任何情况下都可以访问。 private 原因: 为了保证让jvm在任何情况下都可以访问到main方法。static: 静态。静态可以让jvm调用main函数的时候更加的方便。不需要通过对象调用。 不使用static修饰的麻烦:1.需要创建对象调用2.jv原创 2016-10-31 18:21:40 · 300 阅读 · 0 评论 -
单例设计模式
单例设计模式:保证一个类在内存中只有一个对象。防止bier单例设计模式的需求:模式:模式就是解决一类问题的固定步骤。模式的概念最早起源于建筑行业....建房子的步骤都是一样子:打地基-----> 浇柱子------->盖楼面--------->砌墙--------->封顶---->装修-----入住软件行业中23种设计模式:原创 2016-10-31 19:02:51 · 190 阅读 · 0 评论 -
使用异或对图片进行加密
import java.io.*;class ImageTest { public static void main(String[] args) throws Exception { //找到图片文件 File inFile = new File("e:\\加密的图片.jpg"); File outFile = new File("e:\\解密的图片.jpg"); /原创 2016-10-26 07:57:17 · 3766 阅读 · 0 评论