传参
当一个方法的形参需要一个类类型,就传该类的一个对象
eg:Student stu = new Student();
eg: SetStudent(stu,19);
——————输出结果为19
当一个方法的形参需要一个 抽象类类型,就传该抽象类的一个子类对象
eg:AA bb = new BB();
eg:Get(bb,300);
——————输出结果为抽象类中定义的100;
注:若用抽象类接收,num的值为抽象类中定义的值,与其他方法无关
eg:BB bb = new BB();
eg:Get(bb,300);
——————输出结果为300;
当一个方法的形参需要一个接口类类型,就传该接口的一个子类对象
eg:CC xx = new XX();
eg: SetCC(xx,40);
———————输出结果为接口中定义的20
注:若用接口类型接收,num的值为接口中定义的值,与其他方法无关
eg:XX xx = new XX();
eg:SetCC(xx,40);
——————输出结果为40
返回值
当一个方法的返回值需要一个类类型时,就传该类的一个对象
eg: Student stu = Get(16);
........
}
public static Student Get(int age){
Student stu = new Student();
stu.age = age;
return stu;
当一个方法的返回值类型需要一个抽象类类型时,就返回该抽象类的一个子类对象
eg: public static AAA get(AAA aaa,int num){
aaa.num = num;
return new BBB();
}
注:当父类接收子类对象时,调用变量运行时为父类的变量,与方法无关
当一个方法的返回值类型需要一个接口类型时,就返回实现该接口的类的一个对象
eg: public static JK get(){
Lei lei = new Lei();
return lei;
}
链式编程
定义:当调用完一个方法后,这个方法会返回一个对象,可以继续打点去调用对象中的方法
eg:Student stu = new Student().get(new Student(),600).get2(1000);
包
- 包定义:就是文件夹,用来解决同一个路径下不能存在同名文件的问题(分类管理)
- 导包定义:不同包下的类之间的访问,我们发现,每次使用不同包下的类的时候,都需要加包的全路径。比较麻烦。————————导包的功能
- 定义包格式: package 包名;
- 导入包格式:import 包名;
权限修饰符
-
分类:
-
权限修饰符:public—公共的 protecte—受保护的 默认的 private—私有的
-
状态修饰符:final—最终的 static—静态的
-
抽象修饰符:abstract—抽象的
修饰类:public abstract final
修饰成员变量:public private 默认的 protected final static
修饰成员方法:public private 默认的 protected final static abstract
修饰构造方法:public private 默认的 protected