![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
学习
LJYwxf
这个作者很懒,什么都没留下…
展开
-
模板模式
模板模式举例:public abstract class SpeedMeter{ //转速 private double turnRate; public SpeedMeter() { } //把返回车轮半径的方法设置成抽象方法,交给其子类实现 public abstract double getRadius(); public void setTurnRate(double...原创 2019-09-09 09:43:35 · 65 阅读 · 0 评论 -
单例(Singleton)类
单例类定义如何实现单例类?定义在某些时候,我们只允许为某一个类创建一个实例。如何实现单例类?①构造器不能暴露,否则就可以创建很多个实例。②暴露一个方法,由该方法来返回实例;由于程序必须通过该方法获得实例,所以在调用该方法之前还没有实例,因此只能通过类调用,所以该方法必须用static修饰。③使用一个静态的Field来“缓存”已有的实例;每次在获取实例之前,先判断是否已经“缓存”过实例。...原创 2019-09-09 10:07:31 · 273 阅读 · 0 评论 -
简单工厂模式
简单工厂模式定义的Output接口定义的实现类Computer类用Output工厂生产Output对象总结定义的Output接口public interface Output{ //接口里定义的成员变量只能是常量 int MAX_CACHE_LINE = 50; //接口里定义的普通方法只能是public的抽象方法 void out(); void getData(String m...原创 2019-09-09 15:01:30 · 81 阅读 · 0 评论 -
命令模式
命令模式Command接口处理数组的处理类ProcessArrayCommand接口的两个实现类CommandTestCommand接口public interface Command{ //接口里定义process方法用于封装“处理行为” void process(int [] target)}处理数组的处理类ProcessArraypublic class ProcessAr...原创 2019-09-09 15:19:07 · 98 阅读 · 0 评论 -
内部类
内部类分类成员内部类分为两种非静态内部类★定义内部类有什么好处?★内部类与外部类的区别★非静态内部类的方法访问某个变量时的优先级★总结静态内部类★概念★静态内部类与外部类成员的关系使用内部类★在外部类内部使用内部类★在外部类以外使用非静态内部类●分别被3种修饰符修饰的内部类●在外部类以外的地方定义内部类(包括静态和非静态两种)变量的语法格式如下●在外部类以外的地方创建非静态内部类实例的语法●在外部...原创 2019-09-10 09:49:55 · 100 阅读 · 0 评论 -
接口与抽象类的区别
接口与抽象类的区别接口和抽象类接口和抽象类相似处接口和抽象类都不能被实例化。接口和抽象类都可以包含抽象方法,实现接口或继承抽象类的普通子类都必须实现这些抽象方法。接口是多个程序之间的通信标准;抽象类体现的是一种模板式设计不同处接口里只能包含抽象方法和默认方法,不能有普通方法;抽象类则可以包含普通方法。接口里不能定义静态方法;抽象类可以定义静态方法。接口里只能定义静态常量;抽...原创 2019-09-10 10:55:04 · 76 阅读 · 0 评论 -
枚举类
枚举类概念枚举类与普通类的区别枚举类含有的方法枚举类含有的成员枚举类含有抽象方法枚举类实现接口概念用于代表“实例已经固定”的类,而且定义时就必须在【第一行】创建、并列出来。[修饰符] enum 枚举名{//立即在第一行列出枚举的实例}枚举类与普通类的区别枚举类可以实现一个或多个接口,使用enum定义的枚举类默认继承了Java.lang.Eunm类,而不是直接继承Java.lang...原创 2019-09-10 18:57:32 · 72 阅读 · 0 评论 -
配置环境变量
PATH:告诉操作系统到哪些路径去找命令。路径1;路径2;路径3所有希望在命令行使用的的工具,都应该将这些工具所在的路径添加在PATH环境中即可。JAVA_HOME:告诉Eclipse,JDK安装在哪个目录。。CLASSPATH:告诉JRE到哪些路径下去找类。如果不配置CLASSPATH,JAVA默认到当前目录下找类。...原创 2019-09-10 20:07:01 · 96 阅读 · 0 评论 -
JAR包
JAR包把多个文件打包成一个压缩包原创 2019-09-11 09:08:28 · 91 阅读 · 0 评论 -
面向对象总结
面向对象总结面向对象:JAVA程序最小的程序单位是类。[修饰符] class 类名 extends 父类 implements 接口1,接口2…{//一个或多个Field定义//一个或多个方法定义//一个或多个构造器定义//初始化块//内部类、接口、枚举}【类前面的修饰符】:public abstract | final接口是一种"彻底抽象"的类。接口的语法格式[修饰符]...原创 2019-09-11 09:26:47 · 82 阅读 · 0 评论 -
JAVA基础类库
JAVA基础类库获取用户键盘输入:系统相关的两个类System----代表JVM所在的操作平台。Runtime----代表虚拟机所在的JRE。常用类Object类String、StringBuffer和StringBuilder类Math类ThreadLocalRandom与Random类日期、时间类Date类Calendar类正则表达式Pattern、Matcher类国际化获取用户键盘输入:...原创 2019-09-11 21:51:26 · 137 阅读 · 0 评论 -
Java集合
Java集合Java集合概述Set集合HashSet的存储机制LinkedHashSetTreeSetList集合ArrayList与VectorLinkedListDeque集合各种线性表的性能分析操作集合的工具类:CollectionsMap集合Java集合概述集合,也叫容器。它的功能,相当于容器。Java的集合(容器),用来“装对象的”。容器,应该有哪些方法可供使用?把东西“丢”...原创 2019-09-17 13:18:53 · 108 阅读 · 0 评论 -
接口
接口接口的概念接口的定义接口里可含有以下成员接口的继承使用接口接口的主要用途接口和抽象类接口的概念答:接口相当于彻底抽象的类。接口是从多个相似类中抽象出来的规范(要暴露出来供大家遵守),接口不提供任何实现。接口的定义[修饰符] interface 接口名 extends 父接口1,父接口2…{零个到多个常量定义…零个到多个抽象方法定义…零个到多个内部类、接口、枚举定义…零个到多...原创 2019-09-08 20:53:11 · 90 阅读 · 0 评论 -
abstract(抽象)
abstract修饰符抽象类抽象类的主要作用它只能修饰2个东西:方法和类。抽象方法、抽象类abstract与final是互斥的;永远不能同时出现抽象类有得有失与普通类的区别:有得有失有得:得到一个新功能:抽象类可拥有抽象方法。有失:抽象类失去一个功能:创建对象(创建实例)。抽象类的主要作用派生子类子类构造器一定要调用父类构造器一次,因此抽象类必须有构造器。...原创 2019-09-08 11:38:31 · 58 阅读 · 0 评论 -
final
finalfinal修饰变量final修饰成员变量final修饰方法可以修饰变量(各种变量)、方法、类。final与abstract是互斥:不可能同时出现。final修饰变量该变量被赋初始值之后,不能重新被赋值!final修饰的变量必须被显式赋值,且只能赋值一次。final修饰成员变量非final的成员变量:程序员可以不显式指定初始值,系统会为之分配默认初始值,初始值分配规则与数...原创 2019-09-07 21:04:31 · 93 阅读 · 0 评论 -
成员变量与局部变量的区别
Java变量分为:1.成员变量2.局部变量判断变量方法:①首先看位置,②看修饰符(是否由static修饰)成员变量a.位置:类中定义成员变量b.分为:类变量(有static);实例变量(无static)c.可以不需要显示指定初始值,系统可以自动分配初始值,初始值规则与数组元素的初始值规则完全相同。d.程序中,类本身只有一个;程序一定先有类,再有对象(实例)。类变量:类变量属于类本...原创 2019-09-03 09:11:51 · 90 阅读 · 0 评论 -
类和对象总结
总决:定义类、创建对象、调用方法定义类[修饰符] class 类名{//成员变量//方法//构造器//初始化块//内部类}定义成员变量[修饰符] 类型 变量名 [ = 初始值];定义方法[ 修饰符] 返回值类型 方法名(形参列表){//各种语句。定义变量、赋值语句、流程控制、输出语句}定义构造器[修饰符] 构造器名(形参列表){//各种语句。定义变量、...原创 2019-09-03 09:45:44 · 102 阅读 · 0 评论 -
封装
封装封装,继承,多态—面向对象的3大特征封装包含2方面的意思:原创 2019-09-03 16:58:53 · 72 阅读 · 0 评论 -
构造器
深入构造器构造器规则构造器重载this引用:this调用:构造器规则①构造器用于初始化对象。②构造器如何调用?必须用 new 来调用构造器,这样就可以返回一个初始化完成的对象。③如果你不为一个类提供构造器,系统会自动为该类提供无参数的构造器。构造器重载一个类中可以定义多个构造器(构造器名与类名相同,因此构造器名必然相同),必须要求形参列表不同----这就是构造器重载。this引用:...原创 2019-09-03 18:56:29 · 84 阅读 · 0 评论 -
继承
继承理解继承继承语法子类继承父类可以得到什么?方法重写(override)super限定子类调用父类的构造器封装、继承、多态----面向对象三大特征。理解继承Java的继承:是类与类之间的关系,是一种"由一般到特殊"的关系,子类是一种特殊的父类。子类----小类;父类----大类。子类实例,完全可以当成父类来使用。Java的继承,用的时extends单词,扩展的。父类(超类、基类);...原创 2019-09-03 20:03:20 · 71 阅读 · 0 评论 -
多态
多态概念为什么有多态?强转运算符的注意点:变量的类型instanceof运算符3种类型:类、接口、枚举4个修饰符:private | protected | public、final、static、abstract5大成员:成员变量、方法、构造器、初始化块、内部类概念多态:同一个类型的多个实例,在执行同一个方法,呈现出多种行为特征----这就叫“多态”。为什么有多态?因为Java...原创 2019-09-04 10:12:52 · 70 阅读 · 0 评论 -
继承与组合之间的联系
继承与组合父类应该如何设计?什么时候需要从父类派生子类?继承与组合的区别父类应该如何设计?尽量隐藏父类的内部数据。尽量把父类的所有成员变量都设成private访问类型,不要让子类直接访问父类的成员变量。对于父类中的辅助性工具方法,用private访问控制修饰符修饰,让子类无法直接访问。如果父类中的方法需要被外部类访问,则用public访问修饰符修饰;但又不希望子类重写该方法,可以使用fi...原创 2019-09-04 11:06:49 · 157 阅读 · 0 评论 -
初始化块
初始化块语法实例初始化块(无static)定义实例变量的原理实例初始化块何时执行?类初始化块(有static)定义类变量的原理类初始化块何时执行?语法[修饰符]{//各种语句}【备注】初始化块是没有名字的。修饰符只能出现一个:static有static叫做类初始化块(静态初始化块)。无static叫做实例初始化块(非静态初始化块)。实例初始化块(无static)实例初始化...原创 2019-09-04 15:16:36 · 95 阅读 · 0 评论 -
面向对象回顾
回顾定义类的语法定义成员变量定义方法定义构造器定义初始化块类用于做什么?对象用于做什么?方法变量构造器初始化块访问权限修饰符继承、多态3种类型(类、接口、枚举)4个修饰符(private|protected|public、final、static、abstract)5个成员(成员变量、方法、构造器、初始化块、内部类)定义类的语法修饰符 class 类名 extends 父类{//5大...原创 2019-09-04 15:37:52 · 56 阅读 · 0 评论 -
包装类
包装类包装类与基本类型自动装箱自动拆箱包装类的方法:parseXxxNullFormatException缓存机制Java有8个基本类型:byte、short、int、long、float、double、char、boolean。这8个基本类型不能当成对象使用,而且也不能接受null值。为了解决上面问题,Java为8个基本类型提供了对应的包装类----可将它们包装成对象。包装类与基本类...原创 2019-09-07 09:48:40 · 107 阅读 · 1 评论 -
两个要被重写的方法
toString方法程序打印对象,或把对象自动转字符串时,实际上用的是该对象的toString()方法的返回值。【默认的toString】Object提供的toString返回:类名@hashCode方法返回值。重写toString:返回该对象的内部状态。任何对象 + " ",就会变成字符串equals()方法【==】如果判断两个引用变量,要求两个引用变量指向同一个对象时,才会返...原创 2019-09-07 10:42:22 · 140 阅读 · 0 评论 -
类成员
类成员static单例模式(singleTon)如何设计单例模式?staticstatic并不是静态的意思,static是类的意思,有static的成员属于类成员,没有static的成员属于实例成员。static是否可以修饰局部变量?答:局部变量不属于成员,因此不能用static修饰。static是否能修饰外部类?答:外部类不属于成员,因此不能用static修饰。st...原创 2019-09-07 14:44:00 · 76 阅读 · 0 评论 -
异常处理
异常处理异常处理异常的分类Checked异常Runtime异常throw抛出异常catch可以与throw结合使用异常处理异常机制:用于保障我们的程序更加健壮异常的处理流程:①当执行try块时引发了异常。系统【会自动生成】一个异常对象②【依次】用异常对象 instanceof catch块异常类。③如果instanceof运算返回true,系统会自动将异常对象传给catch块后的形参,...原创 2019-09-17 16:47:25 · 144 阅读 · 0 评论