继承

/**
 * Created by on 2018/1/9.
 */
public class Main {

    //例子:传参
    public static  void Test(int n,int m){
        int nTem = 0;
        nTem = n;
        n = m;
        m = nTem;

    }
public static void Test1(Testclass testclass){
    int nTem = 0;
    nTem = testclass.m;
    testclass.n = testclass.m;
    testclass.m= nTem;

}
    public  static  class Testclass{
       int n;
        int m;

    }

    public static void main(String[] args) {
        Animal animal1 = new Animal(1,"");
        Animal animal2 = new Animal(2,"");

        Testclass testclass = new Testclass();
        Test1(testclass);
    }
}

/**
 * Created by on 2018/1/9.
 */
public class Animal {
int nAge;
    String strName;

//    public int getnAge() {
//        return nAge;
//    }
//
//    public String getStrName() {
//        return strName;
//    }

//构造,可以直接快捷键或右击--->Generator--->Constructor
    public Animal(int nAge, String strName) {
        this.nAge = nAge;
        this.strName = strName;
    }
//可以直接快捷键或右击--->Generator-->getter
    public String getStrName() {
        return "Animal"+strName;
    }
}

/**
 * Created by  on 2018/1/9.
 */
public class Dog extends Animal {
    //可以使用右击——>generator-->constructor
    public Dog(int nAge, String strName) {
        super(nAge, strName);//表示可以访问父类的2个属性
    }

    @Override//快捷键:ctrl+O或者右击--->generator--->Override Methods
    public String getStrName() {
        return "Dog"+strName;
    }

}

知识点总结:
1.java中只有单继承;即每个子类只能有一个直接父类
2.语法格式:
修饰符 class 子类名 extends 父类名{

}

3.方法重写:
3.1如果子类对继承父类的方法不满意,可以重写父类继承的方法的;调用方法时优先调用子类方法
3.2该重写方法的返回值类型,方法名;参数类型以及个数都要与父类继承的方法一样

4.类的构造器
父类对象->父类属性初始化->父类构造方法->
子类对象->子类对象初始化->子类构造方法

5.Final
final 可以修饰类,方法,属性和静态变量
5.1 final修饰属性:类的初始化属性必须要有值
例如: private final int n =1;
5.2 final修饰静态变量;必须设置初始值
例如:static final int nAge =10;
5.3 final修饰类,则类不允许被继承
final Animal{};
class Dog extends Animal{}//extends Anima是不被允许的
5.4 final修饰方法,则该方法不允许被重写

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容