http://www.cnblogs.com/fishert/archive/2008/04/24/1169801.html
取数算法dp
关于内部类http://www.iteye.com/topic/442435写的比较好。
桥接模式,用于多继承,名称为类名$内部类名.class,
嵌套类
static的内部类就叫做嵌套类
使用关键字.this与.new
内部类与向上转型
将内部类向上转型为基类型,尤其是接口时,内部类就有了用武之地。
方法内的类
可以在方法内创建一个类
方法内创建的类,不能加访问修饰符。
另外,方法内部的类也不是在调用方法时才会创建的,它们一样也被编译了
匿名内部类
在匿名内部类中, 如果使用到了这个参数,那么这个参数就必须是final的。
由于类是匿名的,自然没有构造器,如果想模仿构造器,可以采用实例初始化({})
嵌套类
static的内部类就叫做嵌套类
前面提到了很多次,嵌套类是个例外
使用嵌套类时有两点需要注意:
a、创建嵌套类对象时,不需要外围类
b、在嵌套类中,不能像普通内部类一样访问外围类的非static成员
转自http://blog.youkuaiyun.com/yakihappy/archive/2009/03/11/3979849.aspx
从上面的例程我们可以看出定义在方法内部的内部类的可见性更小, 它只在方法内部可见, 在外部类(及外部类的其它方法中)中都不可见了.同时,方法内的内部类只能访问所在方法的final型成员.同时另一个需引起注意的是方法内部定义成员, 只允许final修饰或不加修饰符, 其它像static等均不可用.
http://www.enet.com.cn/article/2007/1029/A20071029886398.shtml
认识理解Java中native方法 jni
1.访问控制修饰符
分别有:public private protected,缺省
2.其它修饰符
分别有:abstract,final,static,native,synchronized,transient,volatile等
取数算法dp
关于内部类http://www.iteye.com/topic/442435写的比较好。
桥接模式,用于多继承,名称为类名$内部类名.class,
嵌套类
static的内部类就叫做嵌套类
使用关键字.this与.new
内部类与向上转型
将内部类向上转型为基类型,尤其是接口时,内部类就有了用武之地。
方法内的类
可以在方法内创建一个类
方法内创建的类,不能加访问修饰符。
另外,方法内部的类也不是在调用方法时才会创建的,它们一样也被编译了
匿名内部类
在匿名内部类中, 如果使用到了这个参数,那么这个参数就必须是final的。
由于类是匿名的,自然没有构造器,如果想模仿构造器,可以采用实例初始化({})
嵌套类
static的内部类就叫做嵌套类
前面提到了很多次,嵌套类是个例外
使用嵌套类时有两点需要注意:
a、创建嵌套类对象时,不需要外围类
b、在嵌套类中,不能像普通内部类一样访问外围类的非static成员
转自http://blog.youkuaiyun.com/yakihappy/archive/2009/03/11/3979849.aspx
从上面的例程我们可以看出定义在方法内部的内部类的可见性更小, 它只在方法内部可见, 在外部类(及外部类的其它方法中)中都不可见了.同时,方法内的内部类只能访问所在方法的final型成员.同时另一个需引起注意的是方法内部定义成员, 只允许final修饰或不加修饰符, 其它像static等均不可用.
package inner;
public class FunOuter
{
int out_x = 100;
public void test(){
class Inner{
String inner_x = "x";
void display(){
System.out.println(out_x);
}
}
Inner inner = new Inner();
inner.display();
}
public void showStr(String str) {
// public String str1 = "test Inner";// 不可定义, 只允许final修饰
// static String str4 = "static Str";// 不可定义, 只允许final修饰
String str2 = "test Inner";
final String str3 = "final Str";
class InnerTwo{
public void testPrint(){
System.out.println(out_x); // 可直接访问外部类的变量
// System.out.println(str); // 不可访问本方法内部的非final变量
// System.out.println(str4); // 不可访问本方法内部的非final变量
//System.out.println(str2);// 不可访问本方法内部的非final变量
System.out.println(str3); // 只可访问本方法的final型变量成员
}
}
InnerTwo innerTwo = new InnerTwo();
innerTwo.testPrint();
}
public void use() {
// Inner innerObj = new Inner();//此时Inner己不可见了
// System.out.println(Inner.x);//此时Inner己不可见了
}
public static void main(String[] args){
FunOuter outer = new FunOuter();
outer.test();
}
}
http://www.enet.com.cn/article/2007/1029/A20071029886398.shtml
认识理解Java中native方法 jni
1.访问控制修饰符
分别有:public private protected,缺省
2.其它修饰符
分别有:abstract,final,static,native,synchronized,transient,volatile等