配色: 字号:
javaSE
2020-11-24 | 阅:  转:  |  分享 
  
JavaSE演讲人2020-11-2401第五章:面向对象第五章:面向对象构造器this关键字static关键字作用:创建对象,给对象赋值
构造器本身是一个方法(又称为构造方法)构造器没有返回值,也不用写void构造器的方法名必须和类名一致类中是默认有构造器的:构造器的
语法:第五章:面向对象构造器类中是默认有构造器的:如果没有定义带有参数的构造器,那么存在不带参数的默认构造器;01如果定义了带有参
数的构造器,那么默认的构造器就会被覆盖02在定义了参数的基础上要使用无参数的构造器必须显式的将无参构造器定义出来03默认构造器的类
型是protect04构造器的语法:private/public/protect+类名+(参数类型+参数名)this关键
字和构造器放在一起使用,谁调用构造器this指的就是谁。在重载构造器的相互调用时,this关键字必须是构造器的第一条语句第五章:面
向对象this关键字第五章:面向对象static关键字修饰方法static关键字修饰属性Bstatic关键字Astatic关键字修
饰属性语法:static+数据类型+数据名使用static修饰的属性认为是类属性;不使用static关键字修饰的属性认为是
对象属性类属性的生命周期:一直存在,除非虚拟机关闭对象属性的生命周期:主函数的结尾也即是对象属性生命的结尾访问方式:类名.类属性
(推荐)对象实例.类属性(不推荐)static关键字修饰方法语法:publicstaticvoid[返回值类型]方法名(
参数类型参数名){}void表示无返回值返回值类型可以是基本数据类型,也可以是引用数据类型static关键字修饰方法使用st
atic修饰的方法认为是类方法;不使用static修饰的方法认为是对象方法static关键字修饰方法1类名.类方法(推荐)调用方式
(访问方式)2对象实例.类方法(不推荐)注意:类方法只能使用类属性类方法无论是类访问还是对象访问都不能直接访问对象属性因为类方
法是静态的,对象属性是非静态的。不能从静态上下文中访问非静态变量对象属性和方法只能通过\"对象实例.对象属性、对象方法\"来访问
类方法和类属性即可以通过\"类名.类属/类方法\"来访问,也可以通过\"对象实例.类方法、类属性\"来访问静态方法中不可以使用t
his关键字不能将方法体内的局部变量声明为static02第六章:类的继承第六章:类的继承ABC单例模式懒汉模式饿汉模式继承D
EFsuper关键字方法的重写final关键字:第六章:类的继承抽象类第六章:类的继承创建步骤:单例模式懒汉模式在类一创建完成只有
,在类二中通过”引用数据类型对象名=类名.类方法”进行创建对象调用,无论创建多少个对象,返回值都是类一自己本身创建的对象创建
步骤:将默认的构造器私有化也就是权限修饰符为private创建步骤:0201在单例类的内部创建一个自己本身的对象创建的对象是静态的
,否则不能咋静态方法中调用非静态对象权限修饰符为private创建静态方法获得对象权限修饰符:public因为这是其他类唯一可以访
问的方法第六章:类的继承饿汉模式和懒汉模式的区别和懒汉模式的区别02.饿汉模式只是创建了对象而没有初始化,只有在用的时候才初始化对
象。01.懒汉模式是直接初始化使用情况:如果几个类有相同的方法和属性那么就可以使用继承来设计继承关键字:extends第六章:类的
继承继承语法:class子类名extends父类名{子类独有的属性子类
独有的方法}特点:使用情况:如果几个类有相同的方法和属性那么就可以使用继承来设计子主题特点:继承后子类会获得父类的所有的属性和方
法(暂时不final)父类更通用,自雷更具体;子类不能继承父类权限修饰符为privte的属性或方法private:只能在本类中
被访问如果想要继承就得提供公共的set()和get()方法java只能单继承。单继承就是A只能继承B,不能季继承B又继承Cjava
可以多级继承多级继承是指B继承了A,C也继承了A。在子类中隐藏的调用了supersuper();super的调用必须放在方法的第
一行super的其他用法super关键字和this关键字的关系this关键字第六章:类的继承super关键字在子类中隐藏的调用了
supersuper();super表示调用了父类的构造方法子类实例化的过程中父类的构造方法先于子类的构造方法被调用所谓子类实
例化就是创建子类并继承父类子类被调用的时候父类的默认构造器就会被调用(父类如果存在有参数的构造器,一定要把默认的无参构造器显示的表
示出来)子类在调用父类的有参构造器时使用“super(参数列表)”,这时父类的默认构造器就不会被调用了super的其他用法可以
使用super和this关键字来区分子类和父类同名的属性01super可以表示父类的引用02在子类中访问属性和方法的顺序是先在子类
中查找,子类中没有的话再去父类中查找。所以当子类和父类有相同名字的方法时访问的是子类的方法(如果在这种情况下要调用父类的方法时可以
super关键字来实现。)super关键字和this关键字的关系this关键字表示谁调用我,我指的就是谁super关键字表示对父类
的调用this关键字01代表当前类的指定实例的引用02可以区分同名的属性和局部变量子主题03通过this可以调用同类中的构造器(
this(),this(参数列表))04调用本类里面的属性:this.属性名;this.方法名();0102概念:在子类继承
父类时,子类的方法和父类的方法相同(相同指的是权限修饰符、返回值类型、方法名、参数列表都相同。方法帖可以不一样),子类的方法就会在
将父类的方法覆盖。这种方式叫做重写重写和重载的区别第六章:类的继承方法的重写重写和重载的区别重写:在父类和子类有相同的方法,唯一不
同的就是方法体。一般是因为父类的方法体满足不了需求才发生重写。0102重载:重载是在同一个类中,有着相同的方法名但参数的数据类型或
参数个数不同的两个或几个方法就是重载。重载的目的:节省类中的命名资源和提高方法的可读性。第六章:类的继承020301final关
键字:修饰在属性上修饰在类上修饰在方法上修饰在方法上修饰在属性上语法:权限修饰符【static】final数据类型
属性名=值;属性名一般采用大写,多个词采用下划线来分隔。这种常量大多定义在接口中。修饰在类上语法:finalcla
ss类名{属性方法}使用final修饰的方法是不能被继承的。概念:语法:特点第六
章:类的继承抽象类概念:当多个具体的实体类存在着共同的行为,但是有不同的表现,我们在父类继承过程中父类的方法具体实现不能确定,但是
能确定的是他们都有这种行为。将这种行为方法叫做抽象方法。语法:抽象方法语法:publicabstract[返回值][void
]方法名(参数列表);抽象方法没有方法体如果一个类中存在一个抽象方法,那么这个类一定是抽象类。这个类以一定要有abstr
act关键字抽象类语法:abstractclass类名{属性方法}注:抽象类可以没有抽象方法
,但是有抽象方法的的类一定是抽象类。特点抽象类不能被实例化1抽象类必须被子类继承才能使用子类实例化2抽象类的抽象方法不能和pri
vate、final、static共存。5继承类抽象类的非抽象类必须实现抽象类的所有抽象方法。3抽象类也可以继承抽象类,这样不需要
实现父抽象类的方法。403第七章:接口和多态第七章:接口和多态接口多态定义在接口里定义方法在接口里定义属性010203接口可以
继承接口(多继承)使用接口的好处接口和抽象类的区别040506第七章:接口和多态接口第七章:接口和多态接口注:接口是不能被实例
化的。定义接口与抽象类的差别语法:interface接口名{方法的定义.....}定义:如果一个抽象
类中所有的方法的都是抽象的,那么就可以定义为一个接口。接口是对行为的抽象,类是对属性和行为的抽象在接口里定义方法在接口里,每一
个方法都是抽象的,因此可以省略abstract.我的理解:接口就是全是抽象方法的抽象类。要使用接口的话,就得把所有的抽象方法覆盖了
才能使用。语法:class类名implements接口名1、接口名2....{接口里所有的方法
}实现接口的类必须要实现接口里的每一个方法。在接口里定义属性在接口里定义的量都是常量。在接口中可以定义属性,接口里的属性不能修改,
接口中的属性默认是final,static的。访问方式:常量的命名规则通过接口名来访问(推荐)通过接口的实现类的实例来访问单
词大写,多个单词之间用下划线来分开。例如FINAL_PATH接口可以继承接口(多继承)jdk1.7可以实现接口的多继承、多实现和多
级继承jdk1.6及其以下版本不能实现多继承使用接口的好处010203接口定义的是一种标准,可以使我们的代码分层开发,分模块开发接
口降低了代码的耦合度,提高了代码的可扩展性和可维护性。接口改进了单继承的局限。接口和抽象类的区别接口里面所有的方法都是抽象的,抽象
类里面的方法可能是抽象的,也可能是非抽象的。接口和抽象类都不能实例化,接口需要类来实现后实例化实现类,抽象类需要类来继承后实例化继
承类。抽象类只能单继承;接口继承接口可以多继承、也可以单继承。接口还可以多实现(白话就是继承类继承接口可以继承多个接口)接口中的属
性是final、static类型的,抽象类中的属性和普通类属性没有区别接口中的方法默认就是抽象的,不需要加abstract;抽象
类中的抽象方法要加abstract关键字。注:接口是不能被实例化的。可以通过实现接口的类实例化接口01语法:接口名对象名=
new实现接口的类名02定义:继承多态接口多态模板方法(23种的一个)API的使用包第七章:接口和多态多态scanner扫
描器子主题第七章:接口和多态多态12定义:行为具有多种表现功能的能力称为多态继承多态通常使用抽象类来抽象要使用多态的方法。特点
必须要有继承关系,在抽象类中可以定义多态的抽象方法,通过子类来继承这个抽象类然后复写抽象类中的抽象方法以达到多态的效果。多态子类的
实例可以赋给父类的引用。子类中的特有方法不能通过父类来调用。instanceof可以判断多态引用的变量到底是什么类型。接口多态接口
多态基本上和类的继承多态一致:不同的类的继承使用的是继承关系实现多态,接口采用实现的方式实现多态。12必须要实现的一个业务方法定义
一个可以重写也可以不重写的方法34必须不能被重写的方法模板方法:供其他类来使用的方法模板方法(23种的一个)抽象模板具体模板具体的
模板:实现具体的业务逻辑具体逻辑方法重写模板方法(23种的一个)主程序所在类创建具体模板对象API的使用解释一:API是我们写代
码的帮助文档解释二:API(ApplicationProgrammingInterface,应用程序编程接口)是一些预先定义
的函数,目的是提供应用程序与开发人员基于某软件或硬件得以访问一组例程的能力,而又无需math类的使用java.lang.下的
类都不需要引入,都是自动引入的。包就是文件夹包作用:对类做分类管理,可以区分同名不同包的类。包语法:package包名(不同级
别以.来分隔,位置放在有效代码的第一行)包如何编译:javac-d.类文件包的使用同一个包下的两个类可以直接的访问。不同包的使
用类的权限修饰符为public时才能被外部的包引用。方式1:访问不同包的类在类的前面加上包的全路径。这种情况下必须先编译被引用的
包。方式2:在使用某个包下的类时需要引入。scanner扫描器nextInt()方法:将输入的下一个信息扫描为一个intscan
ner是一个类,先实例化一个对象,再调用int变量名=nextInt()的方法扫描自己输入的信息。04第八章:内部类和Obje
ct第八章:内部类和Object内部类匿名类权限修饰符详解object类第八章:内部类和Object010203概念:访问内部类私
有内部类内部类040506静态内部类局部内部类匿名内部类概念:0102把一个类定义到另一个类中,那个内部的类就是内部类。内部类就是
类里面的类。访问内部类内部类的方法如果想要访问内部类的方法,必须要创建内部类的对象,根据对象来访问访问内部类的语法:内部类不能够直
接访问外部类.内部类变量名=new外部类对象.new内部类对象私有内部类内部的类可以是private
,即定义了为私有内部类外部的类的权限修饰符只能是public或者默认(什么都不加)私有内部类只能在外部类里面被访问。可以通过外部
类的公共方法实例化内部类再被其他类调用访问内部类。(和封装有点像,只不过这里封装的是一个内部类)静态内部类01静态类可以加sta
tic关键字,定义了为静态内部类02静态内部类的创建语法:外部类名.内部类名对象名=外部类名.内部对象03j静态内部类只
能访问它的外部类的静态属性局部内部类方法中定义的类叫局部内部类。匿名内部类方法中定义的匿名类叫做匿名内部类第八章:内部类和Obj
ect0102匿名类就是没有名字的类借助接口来创建匿名类。匿名类0304匿名类是一次行的,用完就会被垃圾回收器回收。匿名对象:借助
接口来创建匿名类。01创建了一个没有名字但是实现了接口的类的对象。02语法1:new接口名(){接口里的方
法的覆盖};引用语法:.方法名(参数类型参数名);03语法2:接口名对象=new接口构造方法引用语法:对象.方
法名(参数类型参数名);04注意:匿名类最后的分号一定要加。匿名对象:0102通过类可以实例化一个没有名字的对象,这个对象就
叫做匿名对象。匿名对象很快就会被垃圾回收器回收。也是一次性的。0304语法:new构造方法;也可以这么引用方法:new构造
方法.普通方法名();LOGO四种权限修饰符的一般作用范围第八章:内部类和Object四种权限修饰符的可用性BA权限修饰符详解ht
tps://www.wps.cn子主题()private默认的类(外部类)NY方法YY属性YY四种权限修饰符的一般作
用范围类的权限修饰符一般都是public方法绝大多数都是public属性绝大多数都是privateobject类是类层次结构的根类
,每个类都使用object类。object类作为超类,每个类都继承它的方法。01第八章:内部类和Object直接打印对象时是默认
的在调用父类继承下来的toString02object类判断对象相等时不能用“==”号,因为“==”是在判断地址是否相等,而地址是
永远不会相等的。0305第九章Eclipse的使用和异常第九章Eclipse的使用和异常快捷键的使用错误和异常第九章Eclipse
的使用和异常常用快捷键主函数:输入main然后按下alt+/C标出输出:输入syso然后按下alt+/B快捷键的使用A常用快捷键0
10203自动补全:alt+/单行注释:ctrl+/多行注释封装:Ctrl+shift+/040506取消多行注释:Ctrl+sh
ift+\\对代码进行格式化:Ctrl+shift+f向上移动选中行:alt+↑常用快捷键对使用了其他包中的类或接口进行自动导入,
也可以消除没用的包:Ctrl+shift+o向上下移动选中行:alt+↓删除选中行:ctrl+d将选中部分的字母大写:ctrl+s
hift+x将选中部分的字母小写:ctrl+shift+y获得建议处理方式:ctrl+1第九章Eclipse的使用和异常错误和异常
CEA自定义异常异常都是以Exception结尾的编译期异常的处理编译期异常自行处理运行时异常上抛运行时异常的处理错误都是以er
ror结尾的FBD异常都是以Exception结尾的编译期异常编译期异常必须处理,不处理就无法编译通过。运行时异常编译期没有异常,
但是运行的时候出现了异常。如果发生了运行时异常,异常点之后的代码就不会执行。运行时异常的处理第一种方法:自行解决语法:try{
可能发生异常的代码}catch(异常类型变量名){处理异常的代码}如果不发生异常就不会产生异常对象(就是变量名代表的对象)也不会进入catch如果发生了异常,这个异常会进入catch中,走catch中的代码。如果异常通过catch得到了处理,那么catch模块后面的代码可以正常执行。第二种方法:向上层抛出(调用者)try{}catch(){}的快捷键:ctrl+shift+ztrycatch语句可以有多个catch,分别处理不同的异常情况。自动上抛的try{}catch()finally{}语句06第十章第十章07第十一章第十一章08第十二章集合上第十二章集合上09第十三章第十三章10第十四章:Map集合和文件第十四章:Map集合和文件11第十五章:IO流和字符流第十五章:IO流和字符流12第十七章:线程第十七章:线程13基本数据类型基本数据类型14new关键字创建对象方法如下:类名对象名=new类的构造函数;new关键字创建对象方法如下:类名对象名=new类的构造函数;感谢聆听
献花(0)
+1
(本文系职场细细品原创)