接口:访问权 interface 类名{}
特点:1.接口中的方法必须都是抽象方法(abstract修饰符可以省略)
2.属性必须都是常量(static final修饰符可以省略)
3.不能直接创建对象
例子;public interface name{};
类: 普通类:访问权限 class 类名{}
1.类中的方法必须都是普通方法
2.属性可以使常量,也可以是变量
3.可以直接创建对象
例子;public class name{};
抽象类:访问权限 abstract class 类名{}
1.类中的方法可以是普通方法,也可以是抽象方法
2.属性可以使常量,也可以是变量
3.不能直接创建对象
例子;public abstract class name{};
续承:extends
特点:子类可以继承父类中的所有非私有属性和方法
普通类继承抽象类\普通类实现接口:必须重写抽象类中的所有的抽象方法
普通类继承普通类:可以选择性重写父类的普通方法
例子;public class name extends name1{};
构造函数;(引用传递)
格式:public 类名(){}
作用:用来创建对象
例子;public class name{public name(){}}
方法重写:子类重写父类中的方法:方法名和参数格式必须一致,方法体可以修改
例子;public class name{public void HelloWorld(){System.out.println("hello world");}}
.方法重载
要求:同一个类中,方法名相同,参数不同(参数个数、参数类型、参数顺序)的多个方法互为重载方法
例子;public class name{publilc void HelloWorld(){System.out.println("helloworld");
publilc voidHelloWorld(Stringname{System.out.println("helloworld1");}}
5.自动转型
子类对象自动转型为父类对象
转型之后的对象,如果子类重写了父类的方法,则执行的还是重写后的方法
6.多态
多态性是指允许不同类的对象对同一消息作出响应。多态性包括参数化多态性和包含多态性。多态性语言具有灵活、抽象、行为共享、代码共享的优势,很好的解决了应用程序函数同名问题。
多态有两种表现形式:重载和覆盖
首先说重载(overload),是发生在同一类中。与什么父类子类、继承毫无关系。
标识一个函数除了函数名外,还有函数的参数(个数和类型)。也就是说,一个类中可以有两个或更多的函数,叫同一个名字而他们的参数不同。
他们之间毫无关系,是不同的函数,只是可能他们的功能类似,所以才命名一样,增加可读性,仅此而已!
引用传递;
值传递:(形式参数类型是基本数据类型):方法调用时,实际参数把它的值传递给对应的形式参数,形式参数只是用实际参数的值初始化自己的存储单元内容,是两个不同的存储单元,所以方法执行中形式参数值的改变不影响实际参数的值。
引用传递:(形式参数类型是引用数据类型参数):也称为传地址。方法调用时,实际参数是对象(或数组),这时实际参数与形式参数指向同一个地址,在方法执行中,对形式参数的操作实际上就是对实际参数的操作,这个结果在方法结束后被保留了下来,所以方法执行中形式参数的改变将会影响实际参数。