继承
extends子类是父类的扩展
Java中只有单继承
super:子类调用父类的属性和方法;
super.name和this.name;
static是和类一起加载的,static方法可以用类直接调用
非静态的方法在创建对象时加载,只能通过对象调用
Java都是值传递
子类方法的重写:
- 方法名相同
- 参数列表相同
- 修饰符:范围可以扩大,不能缩小
- 抛出的异常范围可以被缩小,但不能扩大
封装
高内聚,低耦合;
属性私有,get/set
public class Student {
private String name;//名字
private int id;//学号
private char sex;//性别
private int age;
public String getName(){
return this.name;
}
public void setName(String name){
this.name=name;
}
public int getAge(){
return this.age;
}
private void setAge(int age) {
if (age>120||age<0)//不合法
this.age=3;
else
this.age=age;
}
}
多态
- 多态是方法的多态
- 存在条件:继承关系;方法重写;父类引用指向子类对象Father f1=new Son();
构造器:
使用new关键字,必须要有构造器
可以有多个构造器(参数不同)
instanceof和类型转换
父类转换成子类需要强制转换