方法
方法:只要是带括号的就是方法
类中可以定义哪些内容:变量和方法
方法中可以定义哪些内容:方法中不能定义方法,但是可以调方法名(调用的是方法名())
变量:
语句:方法括号中的参数称之为形参,就是说没有具体的值相当于变量名
方法的定义方式:
1:普通方法(功能的抽象)
- 访问权限控制修饰符: public protect default(不写任何修饰符) private(私有的)
- 返回值: void(return 可以省略),还可以是java中的任何数据类型
- 方法名:普通方法命名方式和变量相同
- 调用方式:实例。方法名()
2:构造方法(用来创造类的实例)
- 访问权限构造修饰符:public
- 方法名和类名相同的方法,成为构造方法
- 没有返回值
- 通过new关键字来调用
3:静态方法(被static修饰的方法称为静态方法)
- 和类的生命周期相同
- 必须通过类名来调用
4.方法的重载(overload)
- 方法名相同,
- 参数个数不同,
- 返回值类型可以相同,可以不同
5.方法的重写(overwrite)
发生在子父类之间(继承extends和实现implements)
方法名,参数,返回值必须相同,只是代码块中执行的逻辑发生了改变
类
类:被class关键字修饰的成为类,java中是以类来组织程序的
类命名规范:首字母大写:可以由数字,字母 下划线 美元符$
类是对具体事务特征抽象的代码层的描述
类类型;接口类型
- 普通类:普通类的方法必须都有实现public void test(){//实现的逻辑}
- 抽象类:被abstract关键字修饰的类,可以包含普通方法和抽象方法
- 接口:被interface修饰的称之为接口
- 接口: jdk1.8之前接口中只能定义抽象方法,1.8以后接口中可以定义默认方法
- 接口的作用:制定规范
抽象类:有制定规范的作用,也有具体的实现
1:普通类或者抽象类是如何和接口产生关系的通过implements关键字,实现接口中的抽象方法
- 在普通类中使用implements进行实现,如果实现了接口中的方法,得到的类还是个普通类
- 在普通类中使用implements进行实现,如果没有实现接口中的方法,得到的类还是个抽象类
2:普通类和抽象类之间是怎样建立联系的,通过继承extends关键字
- 普通类和抽象类之间通过extends,如果实现了抽象类中的抽象方法,结果还是普通类
- 普通类和抽象类之间通过extends,如果未实现抽象类中的抽象方法,结果还是抽象类
3:普通类和普通类之间(抽象类和抽象类之间)
- 继承
- 组合
4:接口和接口,接口可以继承接口
面向对象的特征:
-
抽象(abstract) //归类,抽取共同点
-
封装 //将抽取的共有特性组成一个公用的方法或者类,并且增加访问权限的控制
-
继承(extends) // ExtendsDemo
-
多态() //父类指向子类的引用 同一种行为不同的表现形式
-
组合(关联)
java程序设计原则
- 开闭原则,面向扩展开放,面向修改关闭()
- 接口的设计原则:单一职责,一个接口制作同一类型的事情
访问权限控制修饰符
名称 | 同一个包 | 不同包 | 同包下的字类 | 不同包下的子类 |
public | √ | √ | √ | √ |
default | √ | × | √ | × |
protected | √ | × | √ | √ |
private | × | × | × | × |