语法总体结构:
1.package语法
1.1.package语法格式:package x.y.z
1.2.特点
(1)每个类都有自己的包,如果不定义那么将属于默认包。
(2)带包名的全限定类名才是类真正的名称。
(3)一个包对应一个物理目录。
2.import语法
2.1.import语法格式:import x.y.z
2.2.作用:通过使用相对路径资源名称减化程序编写。
2.3.导入资源类型:包、类、成员变量及成员方法。
3.权限修饰符
3.1.private:资源只能在当前类访问。
3.2.friend:资源在一个包中可以访问。
3.3.protected:资源在一个包及有继承关系的类中可以访问。
3.4.public:资源在所有包中可以访问。
4.类名
4.1.普通类
4.2.抽象类、接口类
4.2.1.相同点:
(1)都不能实例化。
(2)都不能包含非静态成员变量。
(3)都包含抽象函数。
4.2.2.不同点
(1)修饰符不同。
(2)抽象类对内使用,接口类对外使用。
(3)抽象类只能单继承,接口类可以多继承。
4.3.单例类、枚举例
4.3.1.概念
单例类:构造器用private修饰的类。
枚举类:本质就是单例类,使用enum修饰,将枚举写在类的第一行。
4.4.内部类、匿名例:加强程序封装设计。
5.继承
5.1.语法关健词:extend,implements。
5.2.作用:通过继承成员成员变量、成员方法提高程序的复用性。
5.3.特点
(1)只能继承非private修饰的资源。
(2)除接口可以多继承,其他类只能单继承。
6.构造函数
6.1.格式
6.2.作用:生成实例的唯一方法。
6.3.构造器类型:
(1)根构造器。
(2)扩展构造器。
(3)应用构造器。
6.4.构造函数调用方法:迭代调用上级类的无参构造方法。
推论:
(1)每个类都有父类,默认为Object类。
(2)迭代调用因为可能用到父类的资源。
(3)没有无参构造方法的需要使用super.function_name写明调用。
7.成员变量
7.1.格式:
7.2.作用:描述类的属性。
7.3.分类
7.3.1.按内存实现分:基础变量,引用变量(引用变量引出垃圾回收、引用强制知识)。
7.3.2.按作用域分:实例变量、类变量。
8.成员方法
8.1.格式:
8.2.作用:描述类的动作。
8.3.方法名:引出重载、重写、多态知识。
8.4.参数传入传出
(1)所有变量都可以传入。
(2)基础变量只能传入,不能传出;引用变量少部分不能传出(设计时堆空间不可变),大部分可以传出。
8.5.函数体
8.5.1.泛型
(1)概念:参数化类型,用于提出程序复用性。
(2)分类:类泛型、函数泛型、集合泛型。
(3)上下限:super规定上限,extend规定下限。
8.5.2.异常
(1)格式:
(2)作用:加强程序健壮性。
(3)语法的作用-略。
(4)异常的分类:CHECK异常和UNCHECK异常。
8.5.3.反射
(1)概念:通过class结构访问类资源。
(2)使用步骤:获取class结构(三种方法)、通过Constructor类获取实例、通过Field、Method类获取成员变量及方法、通用Field、Method及实例调用资源。
转载:https://blog.csdn.net/zhanghuan_00001/article/details/101542655