package com.javaSE07.unit2;
//final修饰的成员变量的初始化
//1.定义属性时用=赋值
//2.构造方法中用=赋值
//3.上述两条只能选择一条
//final修饰的成员变量只能赋值一次
//注意:有多个构造方法时,必须保证每个构造方法都会赋值
/*this的使用
this表示调用所在方法的对象,
this()或者this(参数)可以调用本类中的其他构造方法,前者表示调用无参数的构造方法
this()或this(参数)必须放在方法中的第一行,不能调用两行及以上*/
public class Final {
//public final double PI=3.14; //定义属性时用=赋值
public final double PI;
//构造方法中赋值,必须保证每个构造方法都赋值
public Final(double pi){
PI =pi;
}
public Final(){
//System.out.println(PI);
this(3.14); //调用double参数的构造方法,this()必须在第一句
//this(2.1); //不能调用两次及以上
System.out.println("PI="+PI);
}
}
package com.javaSE07.unit2;
public class FinalTest {
public static void main(String[] args) {
// TODO Auto-generated method stub
//创建一个Final对象
Final fn = new Final();
//System.out.println();
}
}
package com.aowin.other;
//final的使用
//1.final可以修饰变量、方法和类
//2.final修饰的变量为常量,只能赋值一次
//3.final修饰的方法不能被重写
//4.final修饰的类不能被继承
public class Son /*extends Father*/{ //final修饰的类不能被继承
}
package com.aowin.other;
import com.aowin.extendPermission.Father;
public class Daught extends Father {
//成员变量
private String name;
private int age;
{
System.out.println(city);
System.out.println(money);
//System.out.println(name); //默认权限的成员跨包无法继承
//System.out.println(age); //private的成员无法继承
}
}
package com.aowin.other;
public final class Father {
}