类的继承 父类-子类
关键字 extends
新建一个父类
public class Person
{
private String name;
private int age;
public void run()
{
System.out.println("Person run");
}
}
public class Student extends Person
{
public void run()
{
System.out.println("Student run");
}
}
main函数中
public class Test1
{
public static void main(String[] args)
{
Student s=new Student();
Person s1=new Student();//2
s.run();
s1.run();
}
}
子类继承父类时候,子类可以继承父类所有的属性和方法
子类不写的情况下,
方法重写(override)
定义:在子类中可以根据需要对父类父方法进行改造,叫:方法重写。
要点:被重写的方法要有相同的方法名,参数列表相同,返回值相同
注意点:重写方法时候,修饰符权限不能比父类小,且不能比父类方法抛出更多异常。
针对上述例子:
在子类没有进行方法重写时候,子类首先调用父类的run方法,如果子类对父类方法进行重写,则直接调用子类方法。
方法重载(overload)
定义:Java允许一个类中有多个 方法名相同 参数列表不同的方法;重载指 在一个类中 方法名相同,参数列不同
public class Person
{
private String name;
private int age;
public void run()
{
System.out.println("Person run");
}
public void run(int i)
{
System.out.println("Person run");
}
public void run(String i)
{
System.out.println("Person run");
}
}
final static
final 修饰属性变量将变为常量,不能再次进行赋值
static 修饰的属性名,可以用类名直接调用,方法亦同。
3.4个访问修饰符
本类同包子类其他
privateYNNN
defaultYYNN
protectedYYYN
publicYYYY