/**
* 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修饰方法,则该方法不允许被重写