(1)基本数据类型:
八大基本数据类型:
1、整数类型:
byte 占1字节
short 占2字节
int 占4字节
long 占8字节 (定义时后面加L)
2、浮点数类型:
float 占4字节(后加F)
double 占8字节
3、字符类型:
char 占2字节
4、布尔类型:
boolean 占1个比特位(1bit)
(2)引用数据类型:类、接口、数组
---------------------------------------------------------------------------------------
二进制0b开头,八进制0开头,十六进制0x开头
强制类型转换:高----》低 eg:int转byte,可能出现内存溢出,低容量数据类型装不下大数据
自动类型转换:低----》高
-------------------------------------------------------------------------------------------------------------------------------------------------------------
实例变量:类的内部,方法的外部定义的变量,从属于对象,用对象来调用变量
局部变量:方法内部
类变量:加了关键字static的变量,定义位置和实例变量一样
常量:定义用final关键字
-----------------------------------------------------------------------------------------------------------------------------------------------------
开发中必须把package包放在首行,在用import导入其他包。
javaDoc使用命令行可以生成API文档,包括开发作者、版本号等、、、、在命令行下使用javadoc -encoding UTF-8 -charset UTF-8 Doc.java 命令
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
用户交互Scanner对象的使用
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------
递归结构:
递归头:什么条件下不调用自身方法,没有最后的边界尽头,程序会陷入死循环。
递归体:什么条件下需要调用自身方法。
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------
面向对象编程OOP:以类的方式组织代码,以对象的方式组织(封装)数据。
三大特性:封装、继承、多态。
方法的调用:加static的静态方法:用类名调用方法;非静态方法:先new出对象,实例化后调用。
new一个对象本质在调用构造器,new对象时不给参数则调用无参构造器;给参数则调用有参构造器。定义了有参构造器,如果想使用无参形式new对象,必须显示写出无参构造器。构造器的作用是初始化数据。IDEA中,使用alt+inter快捷键自动生成构造器。
封装(数据/信息的隐藏):应禁止直接访问一个对象中数据的实际表示,而应通过操作接口来访问。实现高内聚、低耦合。提高程序的安全性,保护数据。隐藏代码的实现细节。统一接口。增加系统可维护性。
继承:对类的抽象,类与类之间的一种关系,还有聚合、组合等。继承使用extends关键字。
多态:
1、多态是方法的多态,属性没有多态。
2、父类和子类,父类可以转换成子类,否则可能出现类型转换异常ClassCastException。子类转换为父类,低转高自动转换,可能丢失自己本来的方法。父类转换子类,高转低强制转换。
3、子类重写父类方法,父类引用指向子类对象,运行时确定使用父类方法还是子类方法。
重载:方法名一样,参数列表不同。
重写:子类和父类的方法定义必须相同,方法内部的实现内容(方法体)不同。
1、前提:需要有继承关系,子类重写父类的方法。2、方法名必须相同,参数列表必须相同。3、修饰符范围可以扩大不能缩小,public>protected>default>private 。4、抛出异常:范围可以缩小但不能扩大。classNotFpundException<Exception
重写的作用:父类的功能,子类不一定需要或者不一定满足。IDEA中使用alt+Insert的override选择方法自动重写。
super关键字:
instanceof关键字:
A instanceof B 若A\B之间有父子继承关系,则该表达式为true,否则为false.
static关键字:
abstract抽象类:
抽象类只有抽象方法,没有方法的实现,只能在继承抽象类的子类来实现方法。抽象类中可以写普通方法,但是包含抽象方法的类必须定义成抽象类。
接口:类是单继承,接口是多继承。使用interface关键字。
普通类:只有具体实现。抽象类:具体实现和规范(抽象方法)都有。接口:只有规范,自己无法写方法,约束和实现分离。
1、接口中定义的方法都是抽象方法。方法默认public abstract类型,变量默认public static final类型
2、实现接口的类需要重写接口中的方法。使用implements关键字实现接口。
接口的作用:接口是一种约束,定义一些方法让不同的人实现。
内部类:
通过外部类来实例化内部类。内部类可以使用外部类的私有变量。
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------
异常机制:
1、try.....catch【....finally】IDEA中使用ctrl+alt+T
2、throw、throws主动抛出异常
自定义异常:自己命名异常名称继承Exception类即可。
实际应用中的经验总结:
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
标签:02,调用,子类,接口,---,关键字,JavaSE,父类,方法 From: https://www.cnblogs.com/zjjuestc/p/17574049.html